私は現在、adaljs経由でフロントエンドから取得したアクセストークンを使用して、PHPバックエンドからOffice365 APIを照会しようとしています。フロントエンドからのAPI呼び出しは完全に機能します。しかし、バックエンドとポストマンから同じトークンを使用してAPI呼び出しがエラーで失敗:2000000;reason="The token has an invalid signature.";error_category="invalid_signature"
Office365 API:トークンに無効な署名があります
フロントエンド(作業)例:
$http.get("https://outlook.office365.com/api/v1.0/me/calendarview?StartDateTime=2016-08-02T00:00:00Z&EndDateTime=2016-08-02T23:59:00Z") //working
.then(function (response) {
$log.debug('HTTP request to Calendar API returned successfully.');
console.log(response);
}, function (error) {
$log.error('HTTP request to Calendar API failed.');
console.log(error);
});
は、Office365のAPI(ない私のクライアントアプリケーションのためのトークンを取得)とDBにおける店舗:
adalAuthenticationService.acquireToken('https://outlook.office365.com').then(function(refreshToken) {
var data = {
code: refreshToken,
email: email
};
console.log(refreshToken);
Office365.createIntegration('office365', data)
.then(function() {
console.log("link created");
$scope.loading = false;
}, function(error) {
console.error(error);
$scope.loading = false;
})
}, function(err) {
console.error(err);
});
JWTはaud: "https://outlook.office365.com",
があまりにも適切に
エラーは、署名が正しくないことを意味します。 ** Fiddler **を使用して、**フロントエンド**で使用するアクセストークンを追跡することをお勧めします。次に、PHPのバックエンドとPostmanを使用していたトークンと比較して、それが異なるかどうかを調べることができます。 –
あなたはそうです、ありがとう! –