【问题标题】:Does http 307 (temporary redirect) accepts cookie value revalidated at the server end?http 307(临时重定向)是否接受在服务器端重新验证的 cookie 值?
【发布时间】:2018-03-22 23:52:58
【问题描述】:

我正在从我的浏览器调用一个 POST 请求(比如 request A)。我在重定向请求时尝试在后端执行以下操作,

1) Clear a cookie value

2) Set 307 header value and

3) Adding Location header with redirect url (say request B) value.

(2) 和 (3) 工作正常。

(1) 未按预期工作。当 请求 B 被调用时,cookie 值不会被清除 - 它会重用请求 A 中的值。有人可以提供一些关于此的见解吗?

【问题讨论】:

    标签: redirect cookies request http-post http-status-code-307


    【解决方案1】:

    确保在 A 的响应中有适当的 Set-Cookie 标头。 一些 Web 应用程序框架在重定向时无法以通常的方式添加这些标头。

    我已经使用这个简单的 CGI 测试了 Chrome 和 Edge (40.15063) 在 307 重定向中按预期处理 Set-Cookie(从而清除 cookie):

    #!/bin/sh
    
    echo Status: 307 Temporary Redirect
    echo "Content-Type: text/html"
    printf 'Set-Cookie: Your-Cookie=; path=/; domain=Your-Domain; expires=%s' "$(date --rfc-2822 --utc --date='1 day ago')"
    echo "Location: Your-B-url"
    echo
    

    【讨论】:

      猜你喜欢
      • 2018-01-15
      • 2018-07-15
      • 2018-03-13
      • 1970-01-01
      • 2023-03-29
      • 2020-09-06
      • 2015-03-22
      • 2023-03-09
      • 2010-12-11
      相关资源
      最近更新 更多