我这里是和系统没关系,和机型有关系,试了iphonex和iPhone11 不行
非静默授权大部分IOS14以上系统点击拒绝无反应非静默授权大部分IOS14以上系统点击拒绝无反应,找了几台ios的机子测试,系统14一下点拒绝都可以,系统14以上大部分点拒绝无反应
2021-01-26我也遇到了这个问题,机型体现在iphonex和iphone11,点击拒绝授权按钮没反应?有官方的人回答吗?
公众号弹出用户授权,点击拒绝操作。安卓会卡在当前页面。微信公众号弹出用户授权,点击拒绝操作。 安卓(安卓版本:9,微信版本:7.0.17 ,手机型号:三星S8+):会停留在当前页面,不会继续跳到后续的 redirect_uri 。(参考视屏:https://v.qq.com/x/page/l31383mph2z.html)iPhone(ios版本:13.6,微信版本:7.0.14,手机型号:三星S8):即使用户未点同意,也未点拒绝,背景的页面也会连续跳转 redirect_uri。(参考视屏:https://v.qq.com/x/page/l3138dfc9sy.html)问题1:安卓这个拒绝停留在当前页的展示是微信的 feature or bug? 问题2:苹果还没点授权就会连续跳到后面的 redirect_uri 页面,这个是微信实现的 feature or bug? 安卓版本 [图片] 扫描下方二维码可复现 [图片]
2021-01-26解决了吗
location.replace('.../oauth2/authorize?...') 没替换历史https://developers.weixin.qq.com/doc/offiaccount/OA_Web_Apps/Wechat_webpage_authorization.html 微信浏览器中,前端js跳转授权无法替换历史 信息: iphone8plus,微信7.0.15 // 前端使用 location.replace(`https://open.weixin.qq.com/connect/oauth2/authorize?appid=...`) // 跳转授权时,没有替换历史,其结果等同于 location.href = `https://open.weixin.qq.com/connect/oauth2/authorize?appid=...` // 但是其它url却是正常替换历史的 /** * 微信授权 code * @param {object} options {redirect_uri?, scope?, state?} */ function authorize(options = {}) { options.redirect_uri = options.redirect_uri || location.href var url = ` https://open.weixin.qq.com/connect/oauth2/authorize ?appid=${authorize.appid} &redirect_uri=${encodeURIComponent(options.redirect_uri)} &scope=${options.scope || 'snsapi_userinfo' || 'snsapi_base'} &state=${options.state || 'STATE'} &response_type=code #wechat_redirect `.replace(/\s/g, '') // weixin webview // location.replace 没有去掉历史 if ( navigator.userAgent.match(/MicroMessenger/i) && !navigator.userAgent.match(/wechatdevtools/i) ) { // 【hack】 去掉一个历史 只适合前端路由 // 【但是】第一个页面就需要授权的话,就无法去掉了 history.back() setTimeout(() => { location.href = url }, 0) } else { // 在微信浏览器中,此行没有替换历史,而是直接新增了一个历史,导致两个相同的历史页,需要返回两次 // 也是在微信浏览器中等同于 location.href = url // 并且只是 https://open.weixin.qq.com/connect/oauth2/authorize 这个url才会这样 location.replace(url) } } authorize.appid = 'config rewrite' /* // login if(!param('code')){ authorize() } // ajax code => openid */
2021-01-21