微信小程序在苹果手机中打不开小程序页面,wx.agentConfig没有执行

这篇具有很好参考价值的文章主要介绍了微信小程序在苹果手机中打不开小程序页面,wx.agentConfig没有执行。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

最近在写一个小程序,其中使用到了wx.agentConfig获取“launchMiniprogram”,打开小程序页面。
然后在安卓中可以正常打开,在苹果手机中打不开。
期间更换了n次引入的js,头大最后发现是授权的url在苹果手机和安卓中获取的不一样,导致页面授权签名报错40093

{"errMsg": "agentConfig:invalid signature more info at https://open.work.weixin.qq.com/devtool/query?e=40093"}

以下为简略代码

第一部,引入的wx链接

   <script src="https://res.wx.qq.com/wwopen/js/jsapi/jweixin-1.0.0.js"></script>
   <script src="https://res.wx.qq.com/open/js/jweixin-1.6.0.js"></script>

第二部授权url,问题就出现在这 login_url 的最后 #wechat_redirect

  methods: {
    redirect() {
      // 当前企业的 corp_id
      const corp_id = 'xxxxxxxxx';
      // 重定向 URL
      const redirect_uri = encodeURI('http://xxxx.xxxxx-xxxxx.cn/#/wxGoApplet');
      // 授权链接 URL
      const login_url = `https://open.weixin.qq.com/connect/oauth2/authorize?appid=${corp_id}&redirect_uri=${redirect_uri}&response_type=code&scope=snsapi_base&state=STATE#wechat_redirect`
      // 向授权链接 URL 跳转
      window.location = login_url;
    },
  }

//第三步,在/wxGoApplet页面中跳转小程序文章来源地址https://www.toymoban.com/news/detail-741495.html

  getOauthUser() {
      this.loading = true;
      let that = this;
      let url = window.location.href;
      that.redirect_uri = url.split("#")[0];
      let p = url.split("?")[1];
      let query = new URLSearchParams(p);
      that.code = query.get("code");
      // 在这里进行判断,在苹果手机中url会出现字符转码 #wechat_redirect 变 %23#wechat_redirect,查询如果有就进行替换,安卓手机中不会出现#wechat_redirect,故没有这个问题
      if (that.redirect_uri.indexOf("%23") > -1) {
        that.redirect_uri = that.redirect_uri.replace("%23", "%2523");
      }
      // 请求后端接口获取签名认证
      getWeixinSignature(encodeURIComponent(that.redirect_uri), "app").then(
        (res) => {
          // this.meg1 = res.data.data;
          if (res.data.code === 200) {
            that.openDefaultBrowser(res.data.data);
          }
        }
      );
    },
openDefaultBrowser(info) {
      // 初始化qywx-js-sdk 
      let that = this; 
      wx.agentConfig({
        corpid: "xxx",
        agentid: 000000, // 数据格式为number
        timestamp: info.timestamp,
        nonceStr: info.noncestr,
        signature: info.signature,
        jsApiList: ["launchMiniprogram"], // 需要使用的JS接口列表
        success: function (res) {  
      		  wx.invoke(
                "launchMiniprogram",
                {
                  appid: "xxxxxxx", // 需跳转的小程序appid
                  path:
                    "pages/login/login?page=", // 所需跳转的小程序内页面路径及参数。非必填|| page 为需要跳到小程序的页面路径
                },
                (result) => {
                  that.msg = result;
                  setTimeout(() => {
                    // window.close();
                    wx.closeWindow(); // 关闭中间的H5页面
                  }, 1000);
                  if (result.err_msg == "openDefaultBrowser:ok") {
                    // 打开默认浏览器成功后的回调函数
                    console.log("打开浏览器~~~result", result);
                  }
                }
              );
        },
        fail: function (res) {
          // this.meg5 = res;
          console.log(res);
          that.fail = res;
          if (res.errMsg.indexOf("function not exist") > -1) {
            alert("版本过低请升级");
          }
        },
      });
    },

到了这里,关于微信小程序在苹果手机中打不开小程序页面,wx.agentConfig没有执行的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 微信小程序web-view使用说明,及链接打不开问题

             开发微信小程序时,有时会需要在小程序内打开网页链接,这时就需要用到 web-view 标签。web-view 是小程序上用来承载网页的容器,且每个页面只能有一个 web-view,它会自动铺满整个页面,并覆盖其他组件。目前个人类型的小程序上不支持使用。         在小程

    2024年02月09日
    浏览(71)
  • 微信 小程序 在电脑PC端无法加载的解决办法。电脑微信小程序打不开是怎么回事?电脑微信小程序不能打开解决方法教学

    微信版本未及时更新,也会影响小程序的正常打开,可以尝试更新版本。 如果电脑缓存文件过多,内存少,也可能导致小程序无法流畅加载出来,建议定期清理缓存。 当小程序处于临时抢修或停止运营状态时,所有微信用户均无法正常使用。如果是小程序开发者在做更新或

    2024年02月08日
    浏览(51)
  • 【已解决】微信小程序-苹果手机日期解析异常

    在开发微信小程序时,使用了 uView 的 CountDown倒计时 组件和 uni.$u.timeFrom Api,后台传递了一个时间字符串,前台计算时间戳的差值,来显示还有多久开始,这个功能在模拟器和我自己手机(iphon13)上都是正常的,在提交测试之后,测试反馈(iphone12)日期显示异常,先后经历

    2024年02月07日
    浏览(34)
  • 苹果手机微信小程序fixed失效问题记录

    遇到个奇怪的问题,在微信小程序页面中添加一个底部固定按钮,设置样式为fixed,结果在iphone11上会失效,即按钮会跟着页面布局移动,修改过程在此记录一下,遇到相同问题的朋友可以看下是否你也是相同问题。 手机版本: iphone 11  重现代码: index.wxml文件内容: index.

    2024年02月09日
    浏览(37)
  • uni.openDocument 微信小程序在苹果手机打开文档失败

    解决办法:         1,ios端需要传fileType参数                 uni.openDocument({                         filePath: \\\"文件路径\\\",                         fileType: \\\"docx\\\",                         success: res = {                             console.log(\\\'打开

    2024年02月09日
    浏览(32)
  • iphone/苹果手机 微信小程序 真机调试 网络不通 网络请求失败

    问题:iphone/苹果手机 微信小程序 真机调试 网络请求失败,可以确定的是,真机和开发工具所在电脑肯定是在一个网段的,把蜂窝数据都关了,只保留了WIFI,还是请求不通, 最终参考 微信小程序真机调试报错fail-109:net::ERR_ADDRESS_UNREACHABLE ? 解决,原来是 IOS升级了本地网络权

    2024年02月11日
    浏览(86)
  • uni_app 微信小程序 苹果手机 边框显示不全

    解决方案:

    2024年02月12日
    浏览(42)
  • ios系统(苹果手机)微信小程序canvas.draw不执行回调

    当canvas绘制图片完成之后,来执行draw的时候, 1.安卓手机不受影响,可以正常执行draw的回调函数 2.苹果手机在ios高版本系统上,则可能出现draw的回调函数不执行了。  比如以下代码: 之所以会出现这样的原因是:ios高版本系统 对于 canvas的元素要求是: canvas元素必须存在,如

    2024年02月03日
    浏览(32)
  • Fiddler在抓取https数据包时如何解决Tunnel to 443的问题,微信小程序打不开无法抓包的问题和无法抓取https包的问题,数据包上锁的问题等

    参考Fiddler在抓取https数据包时如何解决Tunnel to 443的问题?_fiddler显示443-CSDN博客 内容基本和参考链接一致,修改了一处关键错误,在下面的红色字体部分,本文仅作保存方便自用时查找,点赞请给原文章。 2.在右侧的选项卡里找到FiddlerScript标签(没有找到该标签的施主去Fi

    2024年02月04日
    浏览(32)
  • 192.168.1.253手机上打不开的解决办法

    本文介绍了192.168.1.253手机登录打不开解决办法,192.168.1.253是TP-Link、水星和迅捷等迷你无线路由器的设置地址;很多用户用手机设置迷你无线路由器时,手机上打不开192.168.1.253登录页面。 192.168.1.253手机登录打不开 一、手机连接到迷你路由器WiFi信号 迷你无线路由器,在出厂

    2024年02月08日
    浏览(31)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包