【问题标题】:Why session clears once I use fetch in javascript?为什么我在 javascript 中使用 fetch 后会话会清除?
【发布时间】:2016-07-11 16:37:08
【问题描述】:

我通常在 Flask(Web 框架)中使用会话,并且一切正常。但是,当我在 javascript 中通过 fetch 发送 GET 请求时,似乎会话已被清除(未保存)。背后的原因是什么?有什么办法可以解决这个问题?

【问题讨论】:

  • 什么会话?假设您指的是存储在服务器上的会话状态,那么任何有能力的实现都将使用设置了 HTTPOnly 标志的 cookie。

标签: javascript session flask promise


【解决方案1】:

不要简单地调用fetch(url),下次你可以试试fetch(url, { credentials: 'same-origin' })

credentials:您要用于请求的请求凭据: omitsame-origininclude自动发送 cookie 当前域,必须提供此选项。从 Chrome 50 开始, 此属性还采用 FederatedCredential 实例或 PasswordCredential 实例。

——来自Fetch#Parameters(强调我的)

【讨论】:

    【解决方案2】:

    我使用了简单的xmlHttpResponse() 而不是fetch,一切正常。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2020-07-15
      • 1970-01-01
      • 2016-01-18
      • 2011-03-21
      • 2012-06-04
      • 2014-09-15
      • 1970-01-01
      相关资源
      最近更新 更多