我希望通过Microsoft Graph从我的Microsoft帐户中看到我的联系人。 来自https://github.com/microsoftgraph/nodejs-connect-rest-sample的代码 我在utils / graphHelper.js
中添加了getUserContact函数function getUserContact(accessToken, callback) {
request
.get('https://graph.microsoft.com/v1.0/me/contacts')
.set('Authorization', 'Bearer ' + accessToken)
.end((err, res) => {
callback(err, res);
});
}
并将其添加到graphHelper.js文件的底部
exports.getUserContact = getUserContact;
和文件夹路线 - > index.js是从
修改的router.get('/token',
passport.authenticate('azuread-openidconnect', { failureRedirect: '/' }),
(req, res) => {
graphHelper.getUserData(req.user.accessToken, (err, user) => {
if (!err) {
req.user.profile.displayName = user.body.displayName;
req.user.profile.emails = [{ address: user.body.mail || user.body.userPrincipalName }];
renderSendMail(req, res);
} else {
renderError(err, res);
}
});
});
到
router.get('/token',
passport.authenticate('azuread-openidconnect', { failureRedirect: '/' }),
(req, res) => {
graphHelper.getUserContact(req.user.accessToken, (err, user) => {
if (!err) {
req.user.profile.displayName = user.body;
//req.user.profile.emails = [{ address: user.body.mail || user.body.userPrincipalName }];
renderSendMail(req, res);
} else {
renderError(err, res);
}
});
});
(修改为在index.js文件中第45-48行添加getUserContact)
然后npm从项目目录
开始任何解决方案?
三江源
更新时间:2017年5月15日星期五 在config.js文件中更新(添加contact.read)
scope: ['User.Read', 'Mail.Send', 'Files.ReadWrite','Contacts.Read']
答案 0 :(得分:2)
您没有访问联系人所需的范围。您需要将Contacts.Read
添加到config.js中的scope
值。