终于解决了,微信扫码登录重定向被浏览器拦截

    微信重定向被浏览器拦截

    按照微信官方文档,当我们扫码二维码,点击确定时,会被浏览器拦截。 源码如下

    解决方法

    确保设置了 self_redirect: false 并正确添加了 iframe 的 sandbox 属性。以下是修改后的代码:

    主要修改点:

    将原来的 div#login_container 替换为 iframe#wx_login_container,并设置了必要的 sandbox 属性修改了 initWxLogin 方法,直接使用 iframe 加载微信登录页面在 iframe 的 URL 中包含了 self_redirect=false 参数保留了样式自定义功能,通过动态添加 CSS 到 iframe 中

    这种实现方式更符合微信官方推荐的做法,同时也避免了跨域问题。iframe 的 sandbox 属性设置为 allow-scripts allow-same-origin allow-top-navigation 可以确保必要的功能正常运行,同时保持安全性。

    注意:微信登录的回调地址必须与微信开放平台配置的域名完全一致,否则会报错。确保你的 redirect_uri 参数是正确的。

    效果

    丝滑跳转