API управления пакетами Visual Studio Team Services
Итак, многие исследования показали, что единственный способ отправить пакет NuGet в VSTS Package Management - это использовать инструменты CLI против приложения NuGet Package Explorer. Итак, я надеюсь исправить это, чтобы облегчить жизнь.
Первоначальное исследование заставляет меня думать, что я могу использовать один из REST API, который предлагает Microsoft. Когда я использую ссылку ниже в Postman, я получаю ответ, который обычно является страницей входа Microsoft, чего я и ожидал, когда не проходил аутентификацию в запросе GET.
Однако, когда я заменяю демо-счет и имя фида своим собственным, я получаю ошибку 401.
https://sartainsoftwaresolutions.feeds.visualstudio.com/DefaultCollection/_apis/packaging/feeds/SartainSoftware.Common/packages?api-version=2.0-preview
Если мне не нужно разрешить доступ к указанному API в моей учетной записи VSTS, я не уверен, что мне не хватает.
Какие-нибудь мысли?
1 ответ
Во-первых, что касается проблемы 401, вам нужно указать альтернативные учетные данные для аутентификации (Профиль> Безопасность> Альтернативные учетные данные) или токен личного доступа (имя пользователя пустое, указывать не нужно), вы не можете использовать учетную запись электронной почты напрямую (например, xxx)..hotmail.com)
Во-вторых, чтобы отправить пакет NuGet, вы можете использовать этот REST API:
Положил https://[account].pkgs.visualstudio.com/_packaging/[feed id]/nuget/v2/
Простые шаги для почтальона:
- Использование Get feeds/ Get REST API для получения идентификатора канала
- Введите вышеуказанный URL-адрес REST API push-пакета и измените метод запроса на PUT
- Нажмите вкладку Авторизация
- Выберите Basic Auth
- Оставьте имя пользователя пустым и введите поле " Персональный токен для пароля"
- Перейдите на вкладку " Заголовки " и добавьте новый элемент (ключ:
X-NuGet-ApiKey
; значение:VSTS
) - Нажмите вкладку Body
- Выберите опцию данных формы
- Добавить новый элемент: Выберите опцию " Файл" в поле " Ключ" и нажмите кнопку " Выбрать файлы", чтобы выбрать файл nupkg.
- Нажмите кнопку Отправить, и результат ответа будет 202.
Что касается проблемы со страницей входа, она не будет перенаправлена на страницу входа, если текущий пользователь не прошел аутентификацию при вызове REST API. Вы можете разрешить доступ к REST API с помощью OAuth.