位置: IT常识 - 正文

微信公众号 H5 JS-SDK wx.config 报错 invalid url domain 及 invalid signature 错误原因及解决方式(微信公众号 h5 保存openid)

编辑:rootadmin
微信公众号 H5 JS-SDK wx.config 报错 invalid url domain 及 invalid signature 错误原因及解决方式

推荐整理分享微信公众号 H5 JS-SDK wx.config 报错 invalid url domain 及 invalid signature 错误原因及解决方式(微信公众号 h5 保存openid),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:微信公众号h5js直接下载文件,微信公众号 h5 分享,微信公众号 h5触发分享,微信公众号 h5页面缓存,微信公众号h5js直接下载文件,微信公众号 h5下载,微信公众号 h5页面缓存,微信公众号h5js直接下载文件,内容如对您有帮助,希望把文章链接给更多的朋友!

在项目进行JSSDK使用的过程中,出现了很多问题,其中报错invalid url domain 以及 invalid signature最多,也最头疼,部分坑在文档里也并没有写清楚,这里就简单说下这两个报错的原因和解决方式

一、 invalid url domain

当报错invalid url domain时 其实离成功不远了,错误原因也很直白,就是url并没有在公众号设置里正确绑定,需要重点检查几个东西

1. appid 是否是公众号appid(查看在 微信公众平台-> 登陆公众号后台 -> 基本配置-> 开发者ID(AppID))

2. 域名绑定是否正确(查看在 微信公众平台-> 登陆公众号后台 -> 公众号设置-> 功能设置 -> JS接口安全域名)

注意:在域名绑定时,请确定绑定域名与你H5进行wx.config发起域名一致,http与https一致

二、 invalid signature微信公众号 H5 JS-SDK wx.config 报错 invalid url domain 及 invalid signature 错误原因及解决方式(微信公众号 h5 保存openid)

invalid signature是开发是碰到最多也是真的有大坑的一个报错,基本的错误在文档里都有写清楚,按照官方文档(https://developers.weixin.qq.com/doc/offiaccount/OA_Web_Apps/JS-SDK.html#62) 配置基本能够完成,我这里说一个文档里并没有描述,但是却很容易或者让人很疑惑的坑。

在这个报错的信息里会伴随一个realAuthUrl,我们在开发的时候发现这个报错的realAuthUrl在ios以及安卓里表现不一样,而且在ios中是否刷新也会表现不一样,在查阅了很多文章后终于大概明白了坑点,主要表现如下:

1. ios端微信浏览器进入H5页面时,realAuthUrl是从微信跳进H5的第一个url,也就是说如果在微信公众号点击XXX.com/aa/bb 跳进了H5, 那么H5的realAuthUrl 就是 XXX.com/aa/bb ,也就是我们需要使用去进行signature签名的url, 无论我们在哪个其它路径发起wx.config,都只能传 XXX.com/aa/bb ,这一点就和官方文档写的让我们动态location.href.split(‘#’)[0] 获取地址有冲突了,因为动态获取的路径不一定是初始化进入H5的路径XXX.com/aa/bb 但是有两个例外的情况:

(1)比如我们从 XXX.com/aa/bb 进入H5,但是停留在了 XXX.com/aa/bb/cc 路径下,此时如果我们点击浏览器右上方的操作按钮进行刷新操作, 此时的realAuthUrl又会变成 XXX.com/aa/bb/cc 而不是我们初始进入页面的url

(2)如果我们从 XXX.com/aa/bb 进入H5,然后跳转至 XXX.com/aa/bb/cc 跳转的方式是通过window.location.href跳转而不是框架路由跳转,此时真正的realAuthUrl也会变成 XXX.com/aa/bb/cc

2. 安卓微信浏览器进入H5页面,你在哪个路径发起了wx.config,那么realAuthUrl就是你发起请求的路径,这一点和ios完全不一样,比如是从 XXX.com/aa/bb 进入的H5,但是你真正进行wx.config的路径是 XXX.com/aa/bb/cc/dd?z=xxx 那么 realAuthUrl 就是 XXX.com/aa/bb/cc/dd?z=xxx ,这就和官方文档一致,我们通过动态js获取路径url总能匹配正确的realAuthUrl

原因分析: IOS端微信浏览器,在我们进入H5后,如果使用框架路由跳转,如navigate,link等跳转,不会真正的修改我们SPA项目的url,所以在wx.config的时候他认定的realAuthUrl是进入H5的第一个url或者进行window.location.href跳转后的url 安卓端微信浏览器,进入H5后无论是框架路由跳转还是其它跳转方式,都会真正的修改SPA项目的url

解决方式:

1.在进入H5后保存进入H5的第一个url,在发起wx.config的时候如果是ios端则使用保存的第一个url,如果是安卓的则动态获取,但是请注意ios的使用保存的第一个url的时候一定要确保过程中没有window.location.href跳转,如果有那么要修改对应保存的url

2.如果我们只在特定的页面需要进行接入JSSDK进行wx.config,我们可以在进入这个页面路径的时候使用window.location.href的方式跳转,这样就保证无论是ios还是安卓端我们的realAuthUrl都是当前发起wx.config的url,直接按照官方文档方式使用

本文链接地址:https://www.jiuchutong.com/zhishi/280067.html 转载请保留说明!

上一篇:ddhelper32.exe进程安全吗.是病毒吗 ddhelper32是什么进程(tdxcef.exe进程)

下一篇:OpenEuler安装保姆级教程 | 附可视化界面(openeuler安装gnome)

  • 不能从销项税额中抵扣的进项税额都有什么
  • 疫情捐款收据有什么用吗
  • 作废的发票要拿出来吗
  • 往来款项包括什么
  • 附加税退回分录
  • 扣缴附加税怎么做分录
  • 农产品增值税抵扣政策文件
  • 甲公司存货采用实际成本法核算
  • 测绘费能否在土地出让
  • 红冲暂估原材料如何做会计分录
  • 公司股东投资是负债吗
  • 收到跨境分红的会计处理怎么做?
  • 人力资源公司劳务派遣怎么收费
  • 预缴土地增值税需要计提吗
  • 营改增后还有营业费用吗
  • 私账对私账不用交税吗
  • 个人所得税工资和实际工资对不上
  • 退以前年度所得税会计分录
  • 高新企业研发投入后产出增加
  • 现金购入库存商品的分录
  • 补提以前年度无形资产摊销税务处理
  • 停车场收入如何确认缴税
  • 电子钥匙到期怎么办
  • 制造费用包括哪些费用项目
  • 企业网银支持互联网专线
  • linux怎么翻译
  • 监理多计量承担什么责任
  • 五险会计分录会计处理
  • 反结账是什么意思怎么取消
  • 债券转换是什么意思
  • 进项税额转出可以填负数吗
  • 人工智能示例
  • linux rc.d init.d
  • 成本费用做账
  • 发现以前年度的账错误
  • python中删除字典里的空项目
  • 去年的预提费用今年进来了怎么入账
  • mongodb设置远程连接
  • 合同资产科目包含增值税吗
  • 企业所得税的内容比土地增值税的多了
  • 专项附加扣除可以随时更改吗
  • 三票合一的发票什么意思
  • 水电费计提是什么意思
  • 已提足折旧的固定资产出售的账务处理
  • 研发费用加计扣除的条件
  • 疫情期间统筹部工作总结
  • 年终奖政策,提成怎么算
  • 当月发生的费用下月支付
  • 这个营业外支出怎么算
  • 认证超过限制什么意思
  • 代发工资业务流程
  • 境外所得抵免限额大于境外承担的所得税税额
  • 进项税额被转出怎么做账
  • 什么情况会影响到征信
  • 工程物资盘盈为什么冲减在建工程
  • sqlserver分页查询sql
  • 使用命令行 -devmode
  • win2008r2下载
  • 什么是微软软件
  • ubuntu login用户名
  • linux防止攻击
  • 盗版win7怎么升级
  • linux安装迅雷
  • win7游戏打开没反应
  • 锁屏壁纸设置后不显示怎么办
  • linux计划任务如何设置
  • cocos2dx 3.3 + QT5.3制作游戏编辑器
  • 持久化存储数据的方式
  • python中列表删除
  • linux自动重启程序脚本
  • jQuery基于ajax()使用serialize()提交form数据的方法
  • unity 动态壁纸
  • nodejs详解
  • 微博html代码
  • js正则regexp
  • 报废车税务怎么处理
  • 银行流水怎么查
  • 个人开服务费发票 个人所得税
  • 企业医院和事业医院的区别
  • 餐饮办税
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设