gpt4 book ai didi

Laravel:当我尝试在同一路由上提供 ajax 和非 ajax 请求时的奇怪行为(缓存)

转载 作者:行者123 更新时间:2023-12-04 19:09:02 25 4
gpt4 key购买 nike

我注册了 GET laravel.dev/test 的路线.路由对应的 Controller 会区分请求是否是ajax。

当我输入 laravel.dev/test在浏览器上,Laravel 检测到它不是 ajax 请求并使用 return View::make()生成页面。然后Backbone.js页面上的代码向 laravel.dev/test 发出 ajax 请求和 Laravel 使用 return Response::json返回一个 JSON。

一切都很好,直到我尝试离开页面然后使用浏览器按钮导航回 laravel.dev/test它打印出 json 作为响应,这不是我所期望的,因为我没有发出 ajax 请求。

最佳答案

绝对是缓存问题。只是为了尝试获得一些结果,将其添加到您的 Controller (ajax 和非 ajax)以强制禁用缓存:

header("Cache-Control: no-cache, must-revalidate"); // HTTP/1.1
header("Expires: Sat, 26 Jul 1997 05:00:00 GMT"); // Date in the past

并查看 chrome 是否仍从后退按钮上的缓存中获取。

关于Laravel:当我尝试在同一路由上提供 ajax 和非 ajax 请求时的奇怪行为(缓存),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17488228/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com