zsxsoft/cordova-plugin-x5-tbs

cookie doesn't work

Opened this issue · 5 comments

如题 使用X5webview后cookie就失效了,具体表现是设置cookie后取不到相应值。
例:
cookie.set('token', 'abc');
cookie.get('token'); // expected output: abc(际拿到的是undefined或者null)
移除cordova-plugin-x5-tbs插件后cookie能正常使用。
猜测原因是官方文档提到的(cookie问题产生的原理是:一段代码把cookie塞给了系统内核,另外一段代码尝试从x5的内核里读取cookie就失败了。类转换的错误产生的原理是:比如xml里指定的是系统的webview,java的代码里把它当作x5的webview使用。)但是就是不知道从哪里入手,求赐教。

请贴出你的完整代码吧?含import在内的。

项目采用Cordova + Vue模式,demo如下:

<template>
  <div id="swiper">
    <div><button @click="setCookies">set cookie</button></div>
    <div><button @click="showCookies">show cookie</button></div>
    <div><button @click="clearCookie">clear cookie</button></div>
  </div>
</template>

<script>
  import {cookie} from 'vux'
  export default {
    name: 'Swiper',
    data: function () {
      return {}
    },
    methods: {
      setCookies () {
        cookie.set('cookie', 'this is my cookie', {path: '/'})
      },

      showCookies () {
        alert(cookie.get('cookie', {path: '/'}))
      },

      clearCookie () {
        cookie.remove('cookie', {path: '/'})
      }
    }
  }
</script>

<style lang="less" scoped>
  #swiper {
    height: 100%;
    text-align: center;
    &>div {padding-top: 50px;}
    button {
      display: block;
      margin: 0 auto;
      padding: 5px 10px;
      border-radius: 4px;
      background-color: burlywood;
    }
  }
</style>

解开注释后编译不通过,报错信息提示找不到符号,估计是SDK没有提供setAcceptFileSchemeCookies这个方法。
2019-01-07 5 10 57

那这样的话,应该是只有http / https能使用Cookie了,不让在本地使用Cookie。