gpt4 book ai didi

javascript - Soundcloud 使用 NodeJS 登录并喜欢声音问题 - 401 未经授权

转载 作者:行者123 更新时间:2023-12-03 07:53:45 24 4
gpt4 key购买 nike

过去一天我一直在研究这个问题,但似乎无法弄清楚。我正在使用这个Passport-Soundcloud实现 soundcloud 身份验证。然而我不明白的是我如何获得身份验证 token 并将其传递给前端按钮推送以发出声音。

我的前端代码如下:

function allowLike(){
$('.queueTrack').off('click').on('click', function(user){
console.log('clicked');
SC.put('/me/favorites/' + 21928809);
consol.log('sound liked')

});
};

每当我尝试使用/login 路由通过我的应用程序登录时,它都会按预期工作并将我重定向到我的主页。问题是我不知道如何从 Passport-soundcloud 获取 oauth token ,以便我可以将其实现到前端点击事件中。

我的路线遵循 Passport-soundcloud 说明并且似乎有效,但我不知道如何获取 oauth token ...

有什么想法吗?我对此完全迷失了。

最佳答案

所以,我不熟悉soundcloud api的具体细节。但如果它遵循流行的 oauth api 的基本模式。然后你会想做这样的事情。

  1. 用户在没有 Cookie 的情况下到达您的网站
  2. 他们使用 oauth 授权您的应用
  3. 当用户重定向回您的应用程序时,SoundCloud 将为您提供该用户的访问 key 。将此值存储在数据库、缓存或内存中。但最重要的是,您必须在该用户的浏览器上创建一个 cookie。这样当他们返回时您可以再次查找访问 key 。
  4. 当用户点击“like”时,在后端查找 accesskey 并使用该 token 点击 SoundCloud api。

在初始 oauth 流程中......

function(accessToken, refreshToken, profile, done) {
User.findOrCreate({
soundcloudId: profile.id,
token: accessToken // <--- store the token!
}, function (err, user) {
return done(err, user);
});
}

然后当他们点击时

app.put('/me/favorites/12345' function(req, res) {
var id = req.user.id; // <--- passport and connect session saved the user id for you
// lookup the token in your database
// use the token to hit the soundcloud api
})

我希望这有某种意义。这是完全未经测试的伪代码。

关于javascript - Soundcloud 使用 NodeJS 登录并喜欢声音问题 - 401 未经授权,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34890371/

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