无论是像这样:
headers: {
'Cookie': 'JSESSIONID=' + user.jsessionid,
'charset': 'utf-8',
'Content-Type': 'application/json'
},
还是这样:
plus.navigator.setCookie(server, 'JSESSIONID=' + jsessionid);
都不行,请求server的话,都会被重定向到登录页面(no session).
像上边第一种的话,在hbuilder里边真机调试(nexus 6p, android 7.1),命令行直接就报:
Refused to set unsafe header 'cookie'。
第二种虽然不会报这个错,但是离线打包之后,安装到手机,在调用服务端接口时,还是会被重定向到登录页。
有人遇到过同样的问题吗?或者能给出个解释,或者解决方案。
q***@163.com
- 发布:2017-01-25 13:07
- 更新:2018-02-02 17:04
- 阅读:3005
ajax设置cookie,在高版本的android手机上无效
分类:MUI
3 个回复
czdwlai
一样遇到这个问题 离线打包使用android6.0及以上的sdk 登陆就无法保持session 不知道官方什么时候解决这个问题
AndrewHE
这个其实很好解决,只要服务端你可以控制就可以。
方案1.可以使用token授权的方式,就是token有时间限制,在一定时间范围内可以使用token去获取数据,token失效就重新登录或者重新获取一次token。
方案2.不适用cookie,你可以使用其它的参数,自定义一个头key来存储cookie,服务端可以先取cookie,如果取不到,则取你自定义的头来判断即可。
czdwlai
主要就是服务端没法改
2017-02-06 12:13
ANKH - 前端
我是这么做的,可以做到保持登录状态了