V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
Fcsle
V2EX  ›  前端开发

我今天面试遇到一个问题 我没一点头绪 大家来看看这个问题 前端的

  •  
  •   Fcsle · 2019-03-21 20:00:11 +08:00 · 2698 次点击
    这是一个创建于 2080 天前的主题,其中的信息可能已经有所发展或是发生改变。

    请问,如果我想实现一个前端的本地缓存,让用户在进入时,能先看到上次请求的数据,在请求到最新数据后再次刷新页面,同时会根据接口的时效性,设置不同的时效限制,例如一个接口时效性是 10 秒,那么在 10 秒内用户发出相同的请求时,我会拦截该请求。请问前端需要考虑哪些因素,如何设计。(不能使用 h5 的缓存功能)

    前端不能操作本地存储,不能用 Cookie, localStorage, serviceWorker, indexDB

    11 条回复    2019-03-25 22:25:31 +08:00
    learnshare
        1
    learnshare  
       2019-03-21 20:04:00 +08:00
    HTTP 过期时间,但这严格来说并不是一个前端话题
    Fcsle
        2
    Fcsle  
    OP
       2019-03-21 20:18:33 +08:00
    @learnshare 应该不是这个 这个面试题是让前端实现
    sologgfun
        3
    sologgfun  
       2019-03-21 20:22:59 +08:00
    好奇怎么不用本地存储看到上次请求的数据,挂在 url 上?
    tabris17
        4
    tabris17  
       2019-03-21 20:23:57 +08:00
    条件模糊,到底页面能不能刷新?如果页面不刷新,实现这个需求不是很简单么
    zqx
        5
    zqx  
       2019-03-21 20:24:34 +08:00 via Android
    编码挂在到 hash 上吗...
    tabris17
        6
    tabris17  
       2019-03-21 20:24:43 +08:00
    页面刷新的话,把数据保存在当前 url 的锚点里就可以了
    Hilong
        7
    Hilong  
       2019-03-21 20:30:38 +08:00 via Android
    接口拦截写计时器可以实现,这个不能用本地存储保存数据还真没接触过一点思路都没
    Biwood
        8
    Biwood  
       2019-03-21 20:43:06 +08:00
    不用前端缓存的技术来实现前端缓存,出题的人是脑子有坑?考察的知识点是?明明是 ServiceWorker 的知识点,非要考些邪门歪道吗。
    guokeke
        9
    guokeke  
       2019-03-22 02:00:32 +08:00
    写到 url 上。。。么,出题人 sb
    qiutianaimeili
        10
    qiutianaimeili  
       2019-03-22 11:25:48 +08:00
    请给我做一道菜,90%的人吃了都说好吃,同时不能用刀,锅,铲子,煤气灶,电磁炉,电饭煲
    jokyme
        11
    jokyme  
       2019-03-25 22:25:31 +08:00
    用 nginx 设置缓存过期时间
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2805 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 23ms · UTC 12:19 · PVG 20:19 · LAX 04:19 · JFK 07:19
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.