office 和 wps 对于超链接的处理浅析

最近遇到一个问题,一个系统的链接譬如:

http://*/home/biaofa.biaofa_list/biaozhuncontent?itemid=29008&quanku=1

在 wps 打开内容页面正常,在 office 中打开后跳转至系统首页,当时研究了一阵,未知其然,提出了让用户去用 wps 做临时处理的方式,后来这事暂时耽搁了下来。

后来考虑到是否是两个软件对于超链的处理不一样,打算抓包看一下,使用 Wireshark ,分别点击进行抓包,发现

对于这个红框的请求中,wps 直接返回200,但是 office返回 304 做了个登录跳转,查看系统对于登录状态判断,认为是cookie丢失导致的,但是为啥wps 不丢,进一步分析抓包数据,发现 wps使用的是电脑上默认的浏览器内核发送请求数据,office用的是IE内核发送,IE上没有登录状态故系统认定未登录,office接收到 304 后,会继续自己处理,直到获取 200 然后抛出给默认浏览器,此时,默认浏览器有登录状态,访问登录页面时自动跳转到系统首页,问题复现。

确定问题后,明确思路是区分请求来源返回200状态,发现office并不会去解析页面的js,因为其只认 200 状态,故设置

Accept: */* 且不为 ajax请求的访问 返回一个 js 控制的跳转,跳转至正确页面,问题解决。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值