【问题标题】:Why do I have to avoid cached results?为什么我必须避免缓存结果?
【发布时间】:2018-10-16 06:44:10
【问题描述】:

我是 AJAX 的新手,我觉得这很令人困惑。请帮我弄清楚。 我追求 w3schools 的课程,我从这里得到了这个例子:

https://www.w3schools.com/xml/ajax_xmlhttprequest_send.asp

我不明白这两个示例中缓存文件和非缓存文件之间的区别是什么,因为两个示例提供相同的结果,为什么我必须在 url 中添加唯一的 Id?

【问题讨论】:

    标签: javascript ajax url get


    【解决方案1】:

    如果你请求一个 url,浏览器或其他代理服务器可能会缓存结果,所以如果你多次请求它,它会更快地传递。但内容可能会过时。

    如果你改变了url,那么从浏览器到中途的其他代理之间的缓存机制,将不会将请求识别为之前的请求。 如果你一直发送相同的号码,它可能会被缓存,所以它必须是唯一的。

    但你无法避免来自服务器本身的缓存结果

    【讨论】:

    • 浏览器和服务器之间的缓存机制加快了文件传输速度。知道这一点,为什么我应该避免使用该唯一 ID 进行缓存?而且上面两个例子的结果都不一样,虽然url中有不同的链接,为什么结果还是一样?
    • 请解释一下“但内容可能会过时”,因为这两个网址的内容都没有过时
    • 存储在缓存中的内容可能已过期,但您不确定。由于“在路上”的缓存通常只是由 url 完成,添加唯一键将始终要求不同的 url,因此缓存将不适用。如果您不想缓存,因为内容可能具有计算或时间相关信息,您需要实际数据。如果服务器上的真实内容发生了变化,但你仍然得到缓存的内容,你就会有过时的信息。
    猜你喜欢
    • 2016-03-11
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-01-29
    • 1970-01-01
    • 2014-06-15
    • 2014-05-16
    • 2021-12-12
    相关资源
    最近更新 更多