Я создал задачу сборки на основе PowerShell для Visual Studio Team Services (ранее Visual Studio Online). Я реализовал большую часть необходимой мне функциональности, но для последней части функциональности мне нужно иметь возможность сохранять небольшой объем данных между сборками.
ExtensionDataService кажется именно тем, что мне нужно (в частности, методы setValue и getValue), но документация и примеры, которые я нашел, относятся к задачам сборки на основе node.js:
VSS.getService(VSS.ServiceIds.ExtensionData).then(function(dataService) {
// Set a user-scoped preference
dataService.setValue("pref1", 12345, {scopeType: "User"}).then(function(value) {
console.log("User preference value is " + value);
});
На предыдущей странице также есть частичный пример вызова REST API, но я получил 404 ошибки при попытке использовать его для сохранения или извлечения значений:
GET _apis/ExtensionManagement/InstalledExtensions/{publisherName}/{extensionName}/Data/Scopes/User/Me/Collections/%24settings/Documents
{
"id": "myKey",
"__etag": -1,
"value": "myValue"
}
Можно ли использовать PowerShell для доступа к ExtensionDataService либо с помощью библиотеки, либо путем прямого вызова REST API?
dataService.setValue
из своего расширения, потому что я использую PowerShell, и инструмент разработчика сейчас бесполезен, потому что мое расширение — это просто задача сборки, в которой нет компонентов на основе браузера. Я дал URL-адрес запроса в ответ на один из ваших других комментариев. - person Chris   schedule 02.01.2017