苹果手机更新了IOS15+版本后,登录企业微信提示40093的问题

现在时间是2021年9月28日,苹果发布了最新的iPhone 13 ,与此同时还更新了IOS版本,当前最新版本为15+,我司用企业微信为依托开发企业H5应用,用安卓手机登录系统一切正常(可以登录,可以调用sdk硬件功能),但是用IOS手机根本不能登录,就提示:


就很那个啥.png

根据官方的提示,说是有两种情况,一是签名有问题,二是URL有问题,我和后台同事查了半天问题,确定签名是没问题的。那就找URL的问题,最后终于发现前端登录时候会调接口,后台同事取的是header里面的“referer”字段。

正常情况下,安卓和ios15-版本的referer都是全部的(全部是指,当前访问的地址是https://xx.xx.com?code=xxxxxxxxxx&state=xxx),而IOS设备15+发送给后台的却是不完整的(只有https://xx.xx.com

知道问题就可以解决了,既然后台同事可能因为浏览器版本问题拿不到,那我就固定死就OK了,遂在前端定义了ticketFromReferer字段,后台在之前接收referer字段的地方(应该是core)替换为ticketFromReferer字段。之后后台重启前端重新登录,一切正常,完美。

前端示例.png

'ticketFromReferer': location.href.split('#/')[0]

问题原因:想来是因为苹果的Safari浏览器版本更新修改了什么安全规则,导致referer只能发送给后台不完整的url

祝大家调接口调得开心调得快乐!!如果解决了你的问题,请帮我点个赞吧!多谢多谢。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。
禁止转载,如需转载请通过简信或评论联系作者。

推荐阅读更多精彩内容