C #: как htttps получить запрос с токеном-носителем в заголовке

#c# #asp.net-web-api #postman #dynamics-365 #erp

#c# #asp.net-web-api #почтальон #динамика-365 #erp

Вопрос:

Всем привет, меня зовут Танигучи.

Я пытался получить объект из Dynamics 365 Finance and Operations, и я сделал это на postman, но теперь у меня возникли трудности с asp.net ядро Я смог получить токен, но когда я пытаюсь получить объект, ответ выдает мне html, и этот html приводит меня на страницу Dynamics 365 Финансы и операции. Мой код: `

         var httpClient = new HttpClient();

        httpClient.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("Bearer", accessToken);

        const string environmentsUri = "https://trial-0z4qfj.sandbox.operations.dynamics.com/data/PartyContacts";

        var response = httpClient.GetAsync(environmentsUri).Resu<

        var content = response.Content.ReadAsStringAsync().Resu<
 

что я делаю не так? нужно ли мне снова проходить аутентификацию?

Ответ №1:

Я подозреваю, что полученный вами токен неверен / завершен. Я помню, что столкнулся с аналогичной проблемой, я бы попросил вас следить за этим сообщением в блоге и попытаться получить токен, как показано, это поможет вам решить вашу проблему.

Кроме того, я бы рекомендовал вам использовать службу Organizaiton с токеном Webapi / Access. Это даст вам возможность использовать собственную библиотеку, и вы сможете легко запрашивать crm.

Попробуйте этот блог для Orgservice

Ответ №2:

Похоже, вы используете только параметр accessToken вместо значения переменной. Зависит от того, как вы объявили accessToken ofc. Остальное кажется прекрасным.

Попробуйте:

 httpClient.DefaultRequestHeaders.Authorization =
    new AuthenticationHeaderValue("Bearer", token.accessToken);