收藏
回答

微信公众号H5开发中localStorage数据存储问题

1. a,b,c三个域  c可以看作共享localstorage数据的共享域

2.a域下嵌套c域名  b域下嵌套c域名


3.通过postmeassage 进行 a-c 以及 b-c 通信   

4.a存储在c中的数据 正常情况是可以通过b去c域中拿


safiri 安卓 测试表现:a,b都能从c中拿到相同的储存数据


BUG表现:IOS微信端无法获得数据  大佬求解。

最后一次编辑于  2019-06-12
回答关注问题邀请回答
收藏

5 个回答

  • 黄思程
    黄思程
    2019-07-08

    在 iframe 里操作 lcoalStorage 正常不?有没有发现异常,读写不了之类的情况

    2019-07-08
    有用
    回复
  • lea
    lea
    2020-04-07

    这个可以结贴了, 如何实现localStorage的跨域通信,请查看这个https://juejin.im/post/5e7dade551882573b627d90e

    2020-04-07
    有用 1
    回复
  • 西瓜酱
    西瓜酱
    2021-03-12

    我现在也遇到了这个问题,安卓微信中可以正常获取到storage数据,但是iPhone XS微信获取到的storage就是一个空对象

    2021-03-12
    有用
    回复
  • 🐮 ...
    🐮 ...
    2019-10-21

    你这个问题解决了吗?我现在也遇到这个问题了

    2019-10-21
    有用
    回复 1
    • lea
      lea
      2020-04-07
      safari由于隐私设置,默认是关闭跨域的,需要用户主动开启才行
      2020-04-07
      1
      回复
  • 铭锋科技
    铭锋科技
    2019-06-11

    3.通过postmeassage 进行 a-c 以及 b-c 通信  


    postmeassage是什么,与公众号有什么关系,这一条说明了什么问题呢?是能正常通信还是不能?

    2019-06-11
    有用
    回复 7
    • lea
      lea
      2019-06-11

      postmeassage就是iframe之间的通信   相当于把localstroage的数据都存到c域下面  a,b通过postmeassage都能对c的loclstorage进行getItem,setItem操作

      2019-06-11
      回复
    • 铭锋科技
      铭锋科技
      2019-06-11回复lea

      ios端是否存在跨域问题?有没有错误提示?

      2019-06-11
      回复
    • lea
      lea
      2019-06-11

      IOS自带safari是支持的  安卓版的微信也支持  ios版的微信不支持  应该是个BUG吧

      2019-06-11
      回复
    • lea
      lea
      2019-06-11回复铭锋科技

      没有错误提示  a,b都能从c域中拿到缓存数据  就是拿到的数据不一样

      2019-06-11
      回复
    • 铭锋科技
      铭锋科技
      2019-06-11回复lea

      一会去操作下看能不能复现,但你得先抛开safari,毕竟公众号与safari没啥关系

      2019-06-11
      回复
    查看更多(2)
登录 后发表内容