if (!openId) {
let locationUrl = window.location.href
if (locationUrl.indexOf('code') >= 0) {
let url = 'https://api.weixin.qq.com/sns/oauth2/access_token?appid=' + appid + '&secret=' + secret + '&code=' + code + '&grant_type=authorization_code'
let result = JSON.parse(window.location.href = url)
openId = result.openId
if (openId) {
localStorage.setItem('openId', openId)
getUserInfoByOpenId(openId)
}
} else {
let codeUri = encodeURIComponent(href)
let url = 'https://open.weixin.qq.com/connect/oauth2/authorize?appid=' + appid + '&redirect_uri=' + codeUri + '&response_type=code&scope=' + scope + '&state=123#wechat_redirect'
window.location.href = url
}
解决了吗?我也遇到了。。。。
你自己编写一条redirect _url:比如:xxx.com/auth/
仿写一条回调:xxx.com/auth/?code=xxx&state=123
然后用浏览器打开它。
然后你的xxx.com服务器端,就能拿到这个code了。
然后网页授权的时候,自然也能拿到真code了。
你怎么确认已经跳转到redirect uri页面