【发布时间】:2020-02-22 22:29:46
【问题描述】:
我希望通过 Azure AD 使用 OAuth2 进行身份验证。
server.js
const express = require("express");
const app = express();
const port = process.env.PORT || 5000;
var bodyParser = require("body-parser");
app.use(bodyParser.urlencoded({ extended: false }));
app.use(bodyParser.json());
app.get("/authorize", async (req, res) => {
const credentials = {
client: {
id: "xxx",
secret: "xxx"
},
auth: {
tokenHost:
"xxx"
}
};
const oauth2 = require("simple-oauth2").create(credentials);
const tokenConfig = {
scope: "<scope>"
};
const httpOptions = {};
try {
const result = await oauth2.clientCredentials.getToken(
tokenConfig,
httpOptions
);
const accessToken = oauth2.accessToken.create(result);
} catch (error) {
console.log("Access Token error", error.message);
}
我按照存储库提供的示例进行操作,但收到错误 Access Token error The content-type is not JSON compatible。
如何使用 NodeJS 和 Simple OAuth2 通过 Microsoft Azure 授权我的 OAuth2?
【问题讨论】:
-
试着把这条线去掉
app.use(bodyParser.json()); -
我有同样的问题,但我没有使用 bodyParser。
-
如果你想通过node.js获取Azure AD访问令牌,你可以使用sdkmsal.js。更多详情请参考docs.microsoft.com/bs-latn-ba/azure/active-directory/develop/…
-
您是否设法解决了错误?我有同样的问题..