2017-02-16 29 views
2

Я пытаюсь выяснить, как синхронизировать отдельные электронные письма с учетной записью Outlook. Я использую конечные точки http rest (вот ссылка на документацию, которую я придерживаюсь: https://msdn.microsoft.com/en-us/office/office365/api/mail-rest-operations#synchronize-messages).ErrorServiceUnavailable при попадании в Outlook http sync-messages endpoint

Я узнал, что если пользователь «портировал» существующий адрес электронной почты (скажем, gmail на данный момент) в Outlook, Outlook присваивает им специальное электронное письмо. Обычно в виде следующих:

[email protected] -> outlook_ некоторые хэш @ outlook.com

Теперь, я был возникли некоторые проблемы с синхронизацией этих «перенесённые» пользователей (я буду называть их, что пока), и каждый раз, когда я попал в синхронизации апи https://outlook.office.com/api/v2.0/Users/*insert email address here*/MailFolders/AllItems/messages, я получаю следующее сообщение об ошибке:

{ error: 
    { code: 'ErrorServiceUnavailable', 
message: 'Active Directory operation did not succeed. Try again later.' } } 

и код состояния запроса является 503.

Мой запрос довольно прост:

export ACCESS_TOKEN=here; export EMAIL=here; curl -X GET -H "Authorization: Bearer $ACCESS_TOKEN" \ 
-H "Accept: application/json" \ 
-H "Cache-Control: no-cache" \ 
-H "Postman-Token: 4455c965-0d49-610a-48e8-7ab37a20c111" \ 
"https://outlook.office.com/api/v2.0/Users/$EMAIL/MailFolders/AllItems/messages" 

Ответ:

< HTTP/1.1 503 Service Unavailable 
< Cache-Control: private 
< Transfer-Encoding: chunked 
< Content-Type: application/json;odata.metadata=minimal;odata.streaming=true;IEEE754Compatible=false;charset=utf-8 
< Server: Microsoft-IIS/8.5 
< Set-Cookie: exchangecookie=**cookie**; expires=Fri, 16-Feb-2018 19:02:08 GMT; path=/; HttpOnly 
< request-id: **request id** 
< X-CalculatedFETarget: BN3PR0601CU001.internal.outlook.com 
< X-BackEndHttpStatus: 503 
< X-FEProxyInfo: BN3PR0601CA0025.NAMPRD06.PROD.OUTLOOK.COM 
< X-CalculatedFETarget: namprd13-provisioning.internal.outlook.com 
< X-BackEndHttpStatus: 503 
< X-FEProxyInfo: DM3PR13CA0019.NAMPRD13.PROD.OUTLOOK.COM 
< X-CalculatedBETarget: CY4PR13MB1078.namprd13.prod.outlook.com 
< X-BackEndHttpStatus: 503 
< OData-Version: 4.0 
< X-AspNet-Version: 4.0.30319 
< X-DiagInfo: CY4PR13MB1078 
< X-BEServer: CY4PR13MB1078 
< X-FEServer: DM3PR13CA0019 
< X-FEServer: BN3PR0601CA0025 
< X-Powered-By: ASP.NET 
< X-FEServer: BY2PR11CA0016 
< X-MSEdge-Ref: Ref A: 1DD7FE1BB0584157A03AB3615CBC3EB6 Ref B: BY1EDGE0414 Ref C: Thu Feb 16 11:02:08 2017 PST 
< Date: Thu, 16 Feb 2017 19:02:07 GMT 
< 
* Curl_http_done: called premature == 0 
* Connection #0 to host outlook.office.com left intact 
{"error":{"code":"ErrorServiceUnavailable","message":"Active Directory operation did not succeed. Try again later."}} 

Эта ошибка происходит только на этих "перенесенных" прогноз счетов. Эти пользователи дали мне доступ через oauth2 (у меня есть токен доступа и токен обновления).

любые идеи как фактически синхронизировать эти учетные записи? Кажется, что ошибка на стороне перспективы выглядит так, как мой код отлично подходит для обычных учетных записей Outlook (например, [email protected] или [email protected]).

заранее спасибо

+0

Как правило, ошибка в 500-диапазоне означает «ошибка на стороне сервера», поэтому вам может быть лучше отправить запрос поддержки. – Evert

+0

спасибо за ответ. где я даже отправляю запрос. Я попытался оглянуться на страницу документации и только попал на какой-то форум https://social.msdn.microsoft.com/Forums/ – Jerry

+0

Я не работаю для Microsoft, поэтому я не смогу вам сказать. – Evert

ответ