API DevOps — получение списка проектов C# с использованием клиентских библиотек

Я пытаюсь заставить ЭТО пример работать (пример клиентских библиотек .Net) - однако все, что я пытался сделать, приводит к ошибке:

Базовая аутентификация требует безопасного подключения к серверу.

В верхней части страницы, на которую я ссылаюсь, есть еще один пример использования REST Api, и он отлично работает. По какой-то причине я просто не могу заставить это работать, используя библиотеки!

Мой код выглядит так:

            Uri uri = new Uri("http://adtfs:8080/tfs/{MyCompany}");
            string personalAccessToken = "MyPATString";
            VssBasicCredential credentials = new VssBasicCredential("", personalAccessToken);

            using (ProjectHttpClient projectHttpClient = new ProjectHttpClient(uri, credentials))
            {
                IEnumerable<TeamProjectReference> projects = projectHttpClient.GetProjects().Result;
            }

Как я уже упоминал, использование одного и того же URL и PAT в примере REST API работает нормально, но для библиотек я просто не могу избавиться от ошибки, упомянутой выше.

Я что-то упустил или кто-нибудь может предложить что-нибудь еще, что я мог бы попробовать, пожалуйста?

Вероятно, нет, но не могли бы вы изменить http=>https с http://adtfs:8080/tfs/{MyCompany} на https://adtfs:8080/tfs/{MyCompany}

GI1 14.12.2020 01:32

@ GI1 на самом деле это почти наверняка так. Бит «требуется безопасное соединение» означает HTTPS вместо HTTP.

Corey 14.12.2020 02:19

Вроде получилось - спасибо! Не стесняйтесь добавлять в качестве ответа! Теперь я получаю еще одну ошибку (сбой рукопожатия из-за неожиданного формата пакета). Это также происходит при попытке примера REST API с Https. Я расследую это отдельно. Не стесняйтесь обновить с ответом для меня, чтобы принять.

CJH 14.12.2020 09:58

Рукопожатие в https связано с SSL-сертификатом, но я могу ошибаться, поэтому возможно, что клиент не работает из-за неправильно настроенного SSL-сертификата на сервере или вы устанавливаете самозаверяющий сертификат, которому не доверяют на вашей машине уже запущен клиент? просто делаю еще одно предположение, извините

GI1 14.12.2020 10:38
Стоит ли изучать PHP в 2023-2024 годах?
Стоит ли изучать PHP в 2023-2024 годах?
Привет всем, сегодня я хочу высказать свои соображения по поводу вопроса, который я уже много раз получал в своем сообществе: "Стоит ли изучать PHP в...
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
В JavaScript одним из самых запутанных понятий является поведение ключевого слова "this" в стрелочной и обычной функциях.
Приемы CSS-макетирования - floats и Flexbox
Приемы CSS-макетирования - floats и Flexbox
Здравствуйте, друзья-студенты! Готовы совершенствовать свои навыки веб-дизайна? Сегодня в нашем путешествии мы рассмотрим приемы CSS-верстки - в...
Тестирование функциональных ngrx-эффектов в Angular 16 с помощью Jest
В системе управления состояниями ngrx, совместимой с Angular 16, появились функциональные эффекты. Это здорово и делает код определенно легче для...
Концепция локализации и ее применение в приложениях React ⚡️
Концепция локализации и ее применение в приложениях React ⚡️
Локализация - это процесс адаптации приложения к различным языкам и культурным требованиям. Это позволяет пользователям получить опыт, соответствующий...
Пользовательский скаляр GraphQL
Пользовательский скаляр GraphQL
Листовые узлы системы типов GraphQL называются скалярами. Достигнув скалярного типа, невозможно спуститься дальше по иерархии типов. Скалярный тип...
0
4
193
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

Измените http=>https с http://adtfs:8080/tfs/{MyCompany} на https://adtfs:8080/tfs/{MyCompany}... самый простой ответ был, я думаю, работает, рад, что помог... но просто в качестве предостережения, я добавлю это для потомков, вы все равно должны использовать https, если сервер его поддерживает (было приложение, которое работало иногда медленно, иногда быстро, и я не мог понять, почему, пока не увидел это https ://httpvshttps.com, оказывается, туннель https всегда воссоздавался, потому что я поставил http вместо https, а сервер был настроен на постоянное переключение на https).

Еще раз спасибо за это! Я использовал старый URL-адрес, так как у нас также есть https, который я сейчас использую, и он отлично работает! Здоровья за голову!

CJH 14.12.2020 12:16

Другие вопросы по теме