使用 TempData 时,我的理解是它只会为一个请求保留您放入其中的任何内容。因此,当使用 TempData 跨重定向保留数据时(为了使用 Post-Request-Get 模式),是否有可能来自用户的其他一些请求可能会在发送重定向的响应和发送重定向的响应之间进入服务器?用户的浏览器请求重定向到的页面?在这种情况下,get 将不再有可用的 TempData,对吗?
现在,我知道发生这样的事情非常罕见,但考虑到用户可能在另一个选项卡中打开了另一个页面,并且该页面上可能发生了 ajax 或定时回调请求,它突然不会在我看来这一切都是不可能的。它只是通常被认为太遥远而无法担心,还是我误解了什么?
编辑:更具体地说明我所询问的场景。
- 在 Tab 1 中,用户浏览到带有帖子表单的页面
- 在选项卡 2 中,用户浏览到网站上的另一个页面,该页面在计时器上执行 ajax 回调
- 在选项卡 1 中,用户将表单发布到服务器
- 当服务器收到帖子时,它会在 TempData 中保存一些数据并发送回重定向响应
- 在选项卡 2 中,发生了定时 ajax 回调,向服务器发送 GET 请求。TempData 已从会话中删除
- 在选项卡 1 中,浏览器接收重定向并发出 GET 请求
- 服务器处理 GET 请求并查找 TempData,但它不再存在