Microsoft Graph获取基本联系人(Node.js)
我想通过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从项目目录开始
login过程结束后
任何解决scheme
谢谢
更新:11:22 15/6/2017更新config.js文件(添加contact.read)
scope: ['User.Read', 'Mail.Send', 'Files.ReadWrite','Contacts.Read']
但是在authentication页面之后再次失败
您没有所需的范围来访问联系人。 您需要添加Contacts.Read
到config.js中的scope
值。