Jenson
Jenson
  • 发布:2015-03-19 17:38
  • 更新:2018-04-19 18:41
  • 阅读:6755

登录获取cookie后安卓无法保存cookie

分类:HTML5+

应用中有个登录模块,所有ajax请求的数据都要带cookie才能获取
安卓下有个bug,登录后确认得到了cookie,立即退出应用,重新进入应用cookie消失了,而ios端是没有问题的。
试了几次发现,如果登录获取cookie后ajax去服务器获取一下数据,然后再退出应用,cookie就能保存下来。
不知道这是什么问题

2015-03-19 17:38 负责人:无 分享
已邀请:
scarlex

scarlex

移动端用 token 的方式去验证登录不是更好么?

Jenson

Jenson (作者)

@scarlex 用token是放在请求的每个ajax地址后面吗?没用过token所以不是很懂

  • scarlex

    放在 http 头吧,封装一个方法,每次发请求都带上那个头

    2015-03-20 10:51

  • Jenson (作者)

    回复 scarlex:好的 谢谢

    2015-03-20 10:58

Fett

Fett

我们也遇到这个问题,为什么官方没人回答!

Android_磊子

Android_磊子

通常来说Cookie是有时效的,当程序退出的时候,安卓runtime会对没有设置时效的cookie进行清理。
检测是否有设置时效字段。

  • Fett

    我觉得你们自己应该有一个小组实际的做一个项目,看看会遇到哪些坑,有哪些手机会遇到哪些问题,怎样解决。我们这个项目用了plus/mui,坑很多,有些只能回避,无法解决。

    针对cookie这个问题,只要有一种手机,我们就要放弃cookie的验证方式,从而修改为随get/post携带数据,很不方便。

    2016-06-06 13:59

ali

ali

我也遇到过这个问题 apple 手机上 正常 安卓手机上 可不行 有木有解决过这个问题的 朋友啊 求解答 谢谢

6***@qq.com

6***@qq.com

同样的问题,感觉cookie写不进去, 马上读取所写cookie 就是取不到

  • 阿卢说他遇

    看官方的回答,就是你cookie设置的时候有加有效时间吗

    2017-11-25 14:44

  • 6***@qq.com

    回复 阿卢说他遇:加了

    let url = window.location.href

    var date = new Date()

    var ms = 3600 1000 24

    date.setTime(date.getTime() + ms)

    window.plus.navigator.setCookie(url, 'VERSONFLIGHT=1; expires=' + date.toGMTString())

    alert(window.plus.navigator.getCookie(url))

    获取不到

    2017-11-25 17:50

  • 阿卢说他遇

    回复 6***@qq.com: 看官方的文档http://www.html5plus.org/doc/zh_cn/navigator.html#plus.navigator.setCookie, 里面的示例中,设置时间后面还有一个路径值: ; path=/,你少了这个;还有第一个参数我不确定能否直接用当前网址,我是直接http开头+域名+“/”,这两点你可以试改一下看看对不对

    2017-11-27 09:24

t***@qq.com

t***@qq.com

若不设置时间,默认关闭后清楚cookie,这么多人不懂还说是bug

该问题目前已经被锁定, 无法添加新回复