Cookie未保存在浏览器中

我试图在我的浏览器中使用Python Flask后端设置cookie,但是当我们调用设置cookie函数时,我无法观察到浏览器保存的cookie。 以下是我目前对这应该如何工作的理解:

  • Cookie只是关键值对,可能会过期,从而导致它们持续存在,否则它们会在浏览器关闭时过期
  • 要设置一个cookie,所有必要的是在响应中使用set-cookie标头。 我调用瓶响应对象的set_cookie方法来做到这一点。
  • 浏览器应该自动保存cookie并遵循过期规则(在浏览器收到的响应中可以观察到set_cookie头文件)
  • 在Angular HttpClient中提出请求

    let headers = new Headers();
    headers.append('Content-Type', 'application/json');
    let options = new RequestOptions({ headers: headers, withCredentials: true });
    const request_data = {'username': this.username, 'password': this.password};
    this.http.post('http://localhost:8080/token', request_data, options)
    

    在Python Flask中设置cookie

    g.response = make_response()
    time = datetime.datetime.now() + datetime.timedelta(days=30)
    g.response.set_cookie("auth_token", auth.token, expires=time)
    return g.response
    

    浏览器中的纯文本响应

    HTTP/1.1 200 OK
    set-cookie: auth_token=7253f2fa43d7584741dcf8972dea8f; Expires=Fri, 05-Jan-2018 01:33:30 GMT; Path=/
    vary: Origin
    access-control-allow-credentials: true
    access-control-allow-origin: http://127.0.0.1:4200
    content-type: application/json
    Expires: Fri, 01 Jan 1990 00:00:00 GMT
    Cache-Control: no-cache
    Content-Length: 58
    Server: Development/2.0
    Date: Wed, 06 Dec 2017 01:33:30 GMT
    

    浏览器的Cookie部分 没有保存cookie的截图

    其他想法和帖子探讨:

  • 尝试使用Safari和Chrome,并在两者中获得相同的结果。 我还验证了浏览器允许cookies。
  • $ http不会在请求中发送Cookie
  • Cookie未在浏览器中设置
  • 如何在JavaScript中使用XMLHttpRequest设置Cookie(标题)?
  • 题:

    如何让浏览器保存cookie以便它可以在当前会话中使用?


    Cookie的域设置为环回地址(127.0.0.1)。 在角度上,我使用'localhost'调用set-cookie端点,而不是阻止cookie保存在浏览器中的环回地址。 只要使用环回地址匹配cookie域,端点基址和浏览器地址,一切都按预期工作。

    有趣的一面是:我不确定目前为什么,但匹配的地址似乎不够。 我也尝试将cookie域,端点基URL和浏览器地址都设置为'localhost',但是这仍然没有设置cookie。 它只有在所有值都是回送地址时才起作用。

    链接地址: http://www.djcxy.com/p/71959.html

    上一篇: Cookies not saved in the browser

    下一篇: tkt via HTTP response headers on mobile client