gpt4 book ai didi

node.js - 将 Simple OAuth2 与 NodeJS 结合使用时,内容类型与 JSON 不兼容

转载 作者:太空宇宙 更新时间:2023-11-03 22:19:54 27 4
gpt4 key购买 nike

我希望使用 OAuth2 进行身份验证使用 Azure AD。

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);
}

我按照存储库提供的示例进行操作,但收到错误访问 token 错误内容类型与 JSON 不兼容

如何使用 NodeJS 和 Simple OAuth2 通过 Microsoft Azure 授权我的 OAuth2?

最佳答案

我也遇到过这个错误。在我的例子中,原因是 oAuth2 服务器使用 text/plain 的内容类型 header 进行响应 - 即使正文实际上是 JSON。

将 simple-oauth2 的 http 选项中的“json”配置选项更改为“force”为我解决了这个问题。

关于node.js - 将 Simple OAuth2 与 NodeJS 结合使用时,内容类型与 JSON 不兼容,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58577682/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com