zoukankan      html  css  js  c++  java
  • 小程序跳转 H5 时 cookie 值处理问题

    小程序使用 <web-view></web-view> 内嵌 H5,当跳转至 H5 后,校验用户的登录状态是最重要的。

    在做手中的项目 b.xx.com 时,需要调用另一个域名下(a.xx.com)的公共地址接口,两处都需要校验用户的登录状态。

    最初的做法是:

    let cookie='aaaaaa2222fghhhh',
        domain = '.xxx.com';
    document.cookie = `sid=${cookie};domain=${domain};path=/`;

    这样写发现在 a.xx.com 中获取不到当前 cookie:经排查发现是因为 a.xx.com 服务器没有开启允许跨域访问,开启之后 cookie 就可以拿到了!

    在后续的联调中发现,凡是  a.xx.com 下的接口,访问时 request header 里都会带两个参数名相同但是值不同的cookie,导致登录校验失败的情况频繁出现,经过接口请求分析发现是因为 a.xx.com 中服务器中设置的 domain 是 a.xx.com ,而 b.xx.com 中设置的 .xxx.com。domain不一致,导致接口的 response 里会自动带上cookie,所以会出现两个参数名相同的 cookie。

    解决方法:将  a.xx.com 的 domain 也设置为 .xxx.com。

  • 相关阅读:
    重构后的ConditionHelper
    重构ConditionHelper
    用shell求两个文件的差集
    文件落盘的逻辑
    [转]undefined reference问题总结
    动态生成xml文件
    32位,64位的一些问题
    树数据结构的实际应用
    线程池中的栅栏
    关于线程池的理解
  • 原文地址:https://www.cnblogs.com/sunLemon/p/9932315.html
Copyright © 2011-2022 走看看