记录一个Safari重定向丢失hash问题

问题描述

​ 最近遇到一个很奇怪的问题,在做开发的时候需要从一个系统单点登录到一个H5系统,此H5系统使用vuejs开发,然后单点登录时在另外的系统使用response.sendRedirect跳转到一个sso的vue路由路径:

http://h5.xxx.xxx/mobile/#!/sso?jwt_token=xxxxxxx

此跳转在Windows环境、Android环境都能正常跳转过去,并且hash部分/sso?jwt_token=xxx等信息都保留,

但是到了iOS,Mac电脑跳转的时候后面的hash部分丢失了,因此造成了单点登录失败。

问题原因

​ 在iOS和Mac平台上的Safari其实有个问题,在URL路径没有完全精确匹配的情况下会丢失hash:

参考:

https://stackoverflow.com/questions/31797448/safari-failing-to-follow-server-side-redirect-with-https-and-hash-params

最终解决问题,其实最终跳转后的页面会停留在/index.html页面上,默认如果没有带上/index.html的话在chrome等其他浏览器上都正常,但是在Safari上是有问题的,因此给redirect的URL添加上/index.html解决问题。

http://h5.xxx.xxx/mobile/index.html#!/sso?jwt_token=xxxxxxx

给TA打赏
共{{data.count}}人
人已打赏
运维

基于Spring的RabbitTemplate实现消息事务

2024-11-19 10:36:31

运维

群晖NAS配置隐藏和加密文件夹

2024-11-19 10:36:38

0 条回复 A文章作者 M管理员
    暂无讨论,说说你的看法吧
个人中心
购物车
优惠劵
今日签到
有新私信 私信列表
搜索