У меня есть веб-сайт в Node JS. Я хочу включить в него логин Wechat. поэтому я использовал для этого паспорт js. Но когда я нажимаю на login.it, он выводит меня на страницу и показывает ошибку. Что-то пошло не так. он переводит меня на следующий URL:
https://open.weixin.qq.com/connect/oauth2/authorize?appid=wx98aa8bxxxxxx&redirect_uri=http%3A%2F%2Fwww.rengbudiao.com%2Fweixinlogin&response_type=code&scope=snsapi_login&state=state&connect_redirect=1#wechat_redirect
, но рабочая ссылка:
https://open.weixin.qq.com/connect/qrconnect?appid=wx98aa8b64xxxxxx&redirect_uri=http%3A%2F%2Fwww.rengbudiao.com%2Fweixinlogin&response_type=code&scope=snsapi_login&state=STATE#wechat_redirect
Я не знаю, как исправитьЭто. их также недостаточно. Есть ли другой способ интегрировать вход в систему wechat?
Я пробовал это с помощью модуля passport-wechat.
#passport config
const passport = require('passport');
const WechatStrategy = require('passport-wechat');
const keys = require('./keys');
passport.use(new WechatStrategy({
appID: keys.weChat.appID,
appSecret: keys.weChat.appSecret,
callbackURL: 'http://www.rengbudiao.com/weixinlogin',
state: "state",
scope: "snsapi_login"
},
function(accessToken, refreshToken, profile, done) {
return done(err,profile);
}
));
#route
router.get('/wechat', passport.authenticate('wechat'));
router.get('/wechat/callback',
passport.authenticate('wechat', { failureRedirect: '/login' }),
function(req, res) {
res.redirect('/');
});