gpt4 book ai didi

javascript - 如何使用 Node.js 和 simple-oauth2 对 LinkedIn 进行身份验证

转载 作者:行者123 更新时间:2023-12-03 00:39:44 25 4
gpt4 key购买 nike

我正在编写一个 Node.js 应用程序来通过 LinkedIn 进行身份验证,但它不起作用。问题是我正在重定向到(看起来是)正确的 URL,但我没有转发到查询用户授权其凭据的页面,而是收到“页面未找到”消息。

我创建了一个 LinkedIn“应用程序”。以下是我的“授权重定向网址”:

enter image description here

HTML

  <div id="root">
<button id="auth-button"> Login </button>
</div>

客户端JS

function onSignInButtonClick() {
// Open the Auth flow in a popup.
window.open('/redirect', 'firebaseAuth', 'height=315,width=400');
};

var button = document.getElementById("auth-button");

button.addEventListener("click",function(){
onSignInButtonClick();
});

服务器代码

const credentials = {
client: {
id: "LINKEDIN_CLIENT_ID-1-2-3-4",
secret: "LINKEDIN_CLIENT_SECRET-1-2-3-4",
},
auth: {
tokenHost: 'https://www.linkedin.com/oauth/v2/authorization'
}
};


const oauth2 = require('simple-oauth2').create(credentials);

var express = require("express");
var app = express();
app.use(express.static("public"));


app.get('/', (req, res) => {

res.sendFile('landing.html',{
root:'public'
})

});




app.get('/redirect', (req, res) => {

const redirectUri = oauth2.authorizationCode.authorizeURL({
response_type:"code",
redirect_uri: "http://www.localhost:3000/callback",
state: "some-cryptic-stuff-98471871987981247"
});

res.redirect(redirectUri);
});


app.get('/callback',(req, res) => {
console.log("linkedin-callback route invoked");

res.send("linked in callback working")

});


app.listen(3000, function(err) {
console.log('Server works');
});

当用户单击该按钮时,他们将被重定向到一个 URL,该 URL 的结构与 LinkedIn 开发人员引用中作为“示例调用”(如下)给出的 URL 相同。

https://developer.linkedin.com/docs/oauth2#

enter image description here

但是,我的代码没有看到上图中的提示,而是给出了以下内容:

enter image description here

最佳答案

您在 LinkedIn 中注册的 redirect_uri (http://localhost:3000/callback) 与您实际发送的内容 (http://www.localhost:3000/callback)。这可能是问题所在,因为它会导致无效的redirect_uri 错误

关于javascript - 如何使用 Node.js 和 simple-oauth2 对 LinkedIn 进行身份验证,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53511010/

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