2

Я использовал V1 DLL API Office 365 для выполнения операций с календарем. я переехал в V2 DLL, но я до сих пор Microsoft.Office365.Discovery версии 1.0.22Microsoft.Office365.Discovery - CapabilityDiscoveryResult -> ServiceEndpointUri имеет неправильный URi после использования Office 365 V2 DLL

При создании OutlookServiceClient, я создаю CapabilityDiscoveryResult (ПКТ)

var dcr = await discClient.DiscoverCapabilityAsync("Calendar"); 

стоимости dcr.ServiceEndpointUri еще появляющийся как https://outlook.office365.com/api/v1.0 enter image description here Когда я изменил этот URi на v2.0, он работал отлично для меня.

Это вызывает проблемы при создании события с помощью V2 DLL

Я удалил DLL и добавил их еще раз (только в том случае, если я пропустил что-нибудь) в соответствии с зависимостями V2 DLL.

Не могли бы вы подтвердить, что этот URL-адрес отображается правильно или я что-то пропустил. Также дайте мне знать, где я могу проверить еще раз.

Заранее спасибо.

+0

Вы установили конечную точку вашего DiscoveryService на https://api.office.com/discovery/v2.0/me? – Jackie

ответ

1

Можете ли вы подтвердить, если этот URL появляется правильно или я что-нибудь не хватает

Ожидаемый URL-адрес возврата.

Версия DLL API Office 365, на которую вы ссылаетесь, - это нерелевантный службы восстановления конечных точек URI. Вы не можете ссылаться на DLL API Office 365 API, но по-прежнему использует клиент службы обнаружения. Таким образом, изменение DLL API Office 365 на V2 не влияет на конечную точку возврата DiscoveryClient.

Явное использование v2.0 службы конечной точки для Client Discovery не помогает,

var discoveryClient = new DiscoveryClient(new Uri(@"https://api.office.com/discovery/v2.0/me/"), 
       async() => await GetAccessTokenForResource("https://api.office.com/discovery/")); 

Разница между v1.0 и конечной точки службы обнаружения v2.0 можно найти в here.

Если вы хотите использовать API V2 Office 365, это безопасно для жестко закодированной конечной точки «https://outlook.office.com/api/v2.0», за сообщение в here.

0

Discovery не является необходимым для Outlook, вы можете пропустить это и создать объект OutlookServicesClient как:

OutlookServicesClient client = new OutlookServicesClient(new Uri("https://outlook.office.com/api/v2.0"), 
     async() => 
     { 
      //code to get your token 
      return token; 
     }); 

Прогноз конечных точек должна быть «https://outlook.office.com/api/v2.0» .Проверить this demo с Microsoft Office 365 с почтой, календарем и контактами Библиотека v2.0

Смежные вопросы