0

Microsoft の Outlook.com Calendar REST API にアクセスしようとしています。OAUTH2 認証が正しく設定され、有効なアクセス トークンと更新トークンが利用可能になりました。

https://outlook.office.comただし、アクセス トークンを使用してカレンダー リスト @ にアクセスしようとすると、次のようになります。

GET /api/v1.0/me/calendars HTTP/1.1
Accept: application/json; odata.metadata=none
Authorization: Bearer eyJ0eXAiOiJKV1QiLCJhbGciO[...]

サービスは403 Forbidden

HTTP/1.1 403 Forbidden
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: ClientId=OD6KHQBTKOKMLXUI8OJEG; expires=Wed, 21-Sep-2016 18:37:21 GMT; path=/; secure; HttpOnly
Set-Cookie: exchangecookie=8e4f582170cb445780c7148e9494b293; expires=Thu, 22-Sep-2016 18:37:23 GMT; path=/; HttpOnly
Set-Cookie: ClientId=OD6KHQBTKOKMLXUI8OJEG; expires=Wed, 21-Sep-2016 18:37:21 GMT; path=/; secure; HttpOnly
request-id: 7113f37d-69e0-4f8c-a264-9f3599d47899
X-CalculatedBETarget: CY1PR08MB1801.namprd08.prod.outlook.com
X-BackEndHttpStatus: 403
OData-Version: 4.0
X-AspNet-Version: 4.0.30319
X-DiagInfo: CY1PR08MB1801
X-BEServer: CY1PR08MB1801
X-Powered-By: ASP.NET
X-FEServer: AM3PR04CA0074
X-MSEdge-Ref: Ref A: D69A31E4FAA44258B0B8C351A71D2F9E Ref B: 0D3CA60C0976F50C452293F8CF403D8C Ref C: Tue Sep 22 11:37:23 2015 PST
Date: Tue, 22 Sep 2015 18:37:22 GMT

{"error":{"code":"ErrorAccessDenied","message":"Access to OData is disabled."}}

私はOutlook の OAuth Sandboxをいじってみました。ここでは、同じ要求が200 OK本文に正しいデータを含む を返します。不思議なことに、彼らは素敵な小さなものを見つけましたShow me the cURL! サンドボックスのボタンですが、この正確なcurlコマンドは403端末でエラーで再び失敗します。

私は何が欠けていますか?

4

1 に答える 1

1

マイクロソフトの技術者と話をしました。私の問題は、REST API が (まだ) 公開されておらず、Microsoft がまだ標準の Outlook.com アカウントに対して API を有効にしていないことです。

Outlookdev@microsoft.com に電子メールを書いて、REST API が有効になっている Outlook 開発者プレビュー アカウントを要求しました。

Microsoft からの回答を得るまでにしばらく時間がかかりましたが、開発者アカウントを使用すると、すべてが期待どおりに機能するようになりました。

于 2015-10-29T20:28:33.207 に答える