Я пытаюсь создать службу node.js для доступа к календарю моего пользователя и отправки приглашений другим пользователям через MS Graph API.
Поэтому я следовал этому руководству: https://docs.microsoft.com/en-us/graph/auth-v2-service
const endpoint = "https://login.microsoftonline.com/[tenant]/oauth2/token";
const requestParams = {
grant_type: "client_credentials",
client_id: "[appid]",
scope: 'https://graph.microsoft.com/.default',
client_secret: "[password/secret]"
};
request.post({ url:endpoint, form: requestParams }, function (err, response, body) {
if (err) {
console.log("error");
}
else {
//console.log("Body=" + body);
let parsedBody = JSON.parse(body);
if (parsedBody.error_description) {
console.log("Error=" + parsedBody.error_description);
}
else {
console.log("Access Token=" + parsedBody.access_token);
requestData(parsedBody.access_token)
}
}
});
function requestData(accessToken) {
request.get({
url: "https://graph.microsoft.com/v1.0/me/calendars",
headers: {
"Authorization": "Bearer " + accessToken
}
}, function(err, response, body) {
console.log(body);
});
}
Я мог успешно получить токен доступа, но при попытке запросить любой из API-интерфейсов Graph я получаю сообщение об ошибке:
{
"error": {
"code": "InvalidAuthenticationToken",
"message": "Access token validation failure.",
"innerError": {
"request-id": "..",
"date": "2019-02-17T09:44:09"
}
}
}
Есть какие-нибудь намеки на то, что я мог сделать неправильно?