cari

Rumah  >  Soal Jawab  >  teks badan

javascript - sessionStorage 和 localStorage 的替代方案

先描述下场景:
列表页面有很多筛选条件,点击跳转详情页面,希望返回的时候,记录筛选条件。
面对这个需求,我第一反应就是用 sessionStorage localStorage 按说没什么问题,但是最近测试被打回,因为用户会开启隐私模式。
在隐私模式,是无法用 sessionStorage localStorage cookie,筛选条件比较多,带参数也不合适。

求有无比较好的解决方案,暂时没想到。

项目是用Vue-roter实现,虽然题目跟框架没关系,但是同时期望能Vue-roter解决方案更好不过了。

黄舟黄舟2775 hari yang lalu775

membalas semua(10)saya akan balas

  • 怪我咯

    怪我咯2017-04-10 16:16:59

    既然不能本地存储,而且页面还会跳转,那当然所有思路都指向了通过服务器返回筛选条件这一种方式了。
    然后有的选择的地方就是:

    1. 可以地址栏?后面挂着筛选的参数(当然,restful的话就不太合适了)

    2. 当作请求参数发送给服务器

    说个题外话,如果是因为项目特殊性导致开启隐私模式的用户百分比很高的话,那就不说什么了,否则不需要考虑隐私模式,毕竟怎样也避免不了奇怪的用户,那还有人禁用脚本呢~

    希望可以帮到你 :P

    balas
    0
  • PHPz

    PHPz2017-04-10 16:16:59

    表单 get 记录用户的筛选。

    balas
    0
  • 高洛峰

    高洛峰2017-04-10 16:16:59

    服务器端的session记录

    balas
    0
  • 黄舟

    黄舟2017-04-10 16:16:59

    如果单纯的是sessionStorage的话,其实还好,自己自定义一个全局cache,就类似sessionStorage一样,在cache上进行对象添加和移除,这种只适合当前会话的场景。如果localStorage的话,建议存数据库,因为要永久保存对应数据。

    balas
    0
  • 大家讲道理

    大家讲道理2017-04-10 16:16:59

    建议用cookie试试 如果存储量少的话

    balas
    0
  • 怪我咯

    怪我咯2017-04-10 16:16:59

    try
    { sessionStorage }
    cacth()
    { cookie }
    这样可以,就是数据量在cookie上有点限制

    balas
    0
  • 怪我咯

    怪我咯2017-04-10 16:16:59

    写在url.hash里 在js里面判断

    balas
    0
  • 高洛峰

    高洛峰2017-04-10 16:16:59

    在服务器端存一份筛选条件,我目前就这样的,保存json格式的数据,每次用户进入都能看到之前的选的条件。再好点可以两者都有,在localstorage中取不到时服务端取,毕竟开启隐身还是少数。

    balas
    0
  • PHP中文网

    PHP中文网2017-04-10 16:16:59

    提供另外的思路:列表刷新页面不刷新。

    balas
    0
  • 天蓬老师

    天蓬老师2017-04-10 16:16:59

    隐私模式是可以使用sessionStorage和localStorage的啊。啊啊。。。。
    只是隐私模式不会保护这些数据而已,同样也不会保存用户登录状态、SESSION、COOKIE,有的浏览器又叫小号窗口。
    没有必要考虑隐私模式,你可以说服下测试。

    balas
    0
  • Batalbalas