問題タブ [microsoft-graph-calendar]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
microsoft-graph-api - Microsoft Graph: ユーザーのタイムゾーンを取得する
ユーザーの委任されたアクセス許可を通じて、他のユーザー ( Calendars.ReadWrite.Shared
) の予定表の空き状況にアクセスできます。これにより、複数の利害関係者(user.findMeetingTimes)に適した会議時間を見つけ、同意したユーザーのカレンダーから招待状を送信できます。
ただし、タイムゾーン情報はどこにもありません。時間の制約に基づいてイベントを適切にスケジュールできるように、他のユーザーのタイムゾーンを知る必要があります。
現在、管理者の同意が必要なアプリケーション スコープを使用してMailboxSettings.Read
いますが、委任された管理者のアクセス許可を与えることを拒否する一部のグループに問題があります。私が見ることができる唯一の代替手段は、ユーザーごとに Oauth2 フローを使用して、この情報を読み取れるようにすることですが、これにより、非常に基本的なデータに多くの不要な摩擦が生じます。
私が逃した代替手段はありますか?よろしくお願いします。
node.js - CompactToken の解析が次のエラー コードで失敗しました: Passport Library を使用して Microsoft Graph API にアクセスすると、80049217
「passport-azure-ad-oauth2」 npm モジュールを使用してアクセス トークンを取得し、それを MS Graph API に渡すことができます。
次に、'@microsoft/microsoft-graph-client' npm モジュールを使用して、次のようにグラフ API からカレンダー イベントをフェッチします。
ただし、成功したログインで提供された accessToken を使用すると、次のエラーが発生します: CompactToken の解析がエラー コードで失敗しました: 80049217
私が間違って何をしているのですか?
更新:これらは私が使用しているスコープです:「openid、profile、offline_access、calendars.read」
更新:スコープを少し編集した後、次のエラーが表示されます:無効なオーディエンス。
jwt.ms で受信したトークンをデコードすると、「aud」の値は次のようになります: "00000002-0000-0000-c000-000000000000"
Passport-azure-ad-oauth2が MS Graph API のトークンを取得するための間違ったライブラリであるということですか?