【发布时间】:2022-01-10 16:00:31
【问题描述】:
当我尝试我的代码“错误:未知身份验证策略“spotify”时出现错误。我什至尝试用谷歌搜索这个问题,但找不到答案
更新:我更新了我的代码,以便为帮助我的人提供答案
代码
const passport = require('passport')
const SpotifyStrategy = require('passport-spotify').Strategy
const userWebData = require('../model/userWebSchema')
passport.serializeUser((user, done) => {
const u = user
done(null, u)
})
passport.deserializeUser(async(spotifyID, done)=> {
try{
const data = await userWebData.findOne({ spotifyID: spotifyID})
const user = data
return user ? done( null, user) : done(null, null)
}catch(e){
console.log(e)
done(e, null)
}
})
passport.use(
new SpotifyStrategy({
clientID: 'Clients_ID_That_I_Wont_Show',
clientSecret: 'Clients_Secret_That_I_Wont_Show',
callbackURL: 'http://localhost:3001/',
scope: ["user-modify-playback-state", "user-read-private","user-library-read"]
}, async(accessToken, refreshToken, expires_in, profile, done)=>{
const userData = await userWebData.findOne({ spotifyID: profile.id})
if(userData){
console.log(`User ${profile.displayName} found`)
return done(err, userData);
}else{
let profiles = await userWebData.create(
{
spotifyID: profile.id,
spotifyName: profile.displayName,
spotifyFollowers: profile.followers,
}
)
profile.save()
console.log(`New User ${profile.displayName} Created`)
return done(err, userData);
}
}
)
)
【问题讨论】:
标签: javascript node.js passport.js spotify