我正在尝试创建一个将利用 Microsoft Graph 的 Amazon Alexa 服务...这是使用 Node.js 构建的。
目前,当使用我的标准 Outlook.com Microsoft 帐户登录时,我被重定向到一个 Microsoft 页面,上面写着
Microsoft account is unavailable
Microsoft account is unavailable from this site, so you can't sign in or sign up. The site may be experiencing a problem.
You can sign in or sign up at other Microsoft Sites and services, or try again later at this site.
我一直在使用 https://login.microsoftonline.com/common/oauth2/v2.0/authorize
作为我在 Alexa 配置帐户链接部分中的授权 URL。并使用节点 Microsoft Graph JavaScript SDK我的代码中的库。
我想知道我使用的 Node 库是否正确?它被弃用了吗?还是这里发生了其他事情?
最佳答案
对 Microsoft Graph 的一个常见误解是 API 和身份验证之间的关注点分离。
您实际上并未针对 Microsoft Graph 进行身份验证。相反,您根据保存您帐户的目录进行身份验证,对于组织帐户,这是 Active Directory,对于消费者帐户,这是 Outlook.com。
完成身份验证后,您可以使用收到的 token 在调用 Microsoft Graph API 时识别您自己。
这是您(和许多其他人)最初被绊倒的地方。正如有两个关注点(Auth & API)一样,也有两个独立的 SDK。对于您正在寻找的 Node.js:
Microsoft Authentication Library (MSAL) :这会处理 Azure AD 和 Microsoft 帐户的身份验证。
npm 安装 msal
Microsoft Graph JavaScript Client Library :这是 Microsoft Graph 的客户端库。它将提供简化 API 调用所需的对象和方法。
npm install @microsoft/microsoft-graph-client
这应该为您提供入门所需的工具。您也可能会遇到与应用程序注册、OAUTH 和管理员同意有关的一些事情。对于这些,您可能会发现这些有帮助:
希望这对您有所帮助!
关于microsoft-graph-api - 哪个身份验证库与 Node.js 一起用于所有 Microsoft 帐户,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46584424/