【问题标题】:Angular 5 - Cookie is set although (Set-Cookie) is in the response headerAngular 5 - 尽管 (Set-Cookie) 在响应标头中,但设置了 Cookie
【发布时间】:2018-08-29 17:50:10
【问题描述】:

对于一个 Angular 5 应用程序,我有一个身份验证服务,它执行一个 HTTP POST,它返回会话 cookie (CORS),如下面的代码所示:

signIn(signInRequest: SignInRequest): Observable<SignInResponse> {
   let headers: Headers = new Headers();   
   headers.append('Content-Type','application/json');  
   return this.http
              .post("/login", {email:  signInRequest._email,password:signInRequest._password}, { headers: headers, withCredentials: true })
  .map(this.extractData)
  .catch(this.handleErrorObservable);}

header 的响应中包含 set-cookie 如下所示:

请求头如下:

我知道浏览器应该设置 cookie 响应。为什么不做呢?

【问题讨论】:

  • 我有一个类似的问题正在努力解决并即将发布赏金。 stackoverflow.com/questions/49352181/…
  • @Jota.Toledo cookie 正在响应标头中返回,所以不确定要在这里公开什么?
  • @ttugates 和你一样,过去两天我一直在努力解决这个问题。
  • 这是我第一次使用 cookie,所以在你发帖之前,我以为我遗漏了一些明显的东西。刚刚在我的 SO 中添加了 50pt 赏金。

标签: php angular cross-domain session-cookies


【解决方案1】:

您的前端托管在localhost:4200,您的后端托管在api.safra.me。默认情况下,您的浏览器不会随请求一起发送 cookie,除非您在登录请求中使用 withCredentials,如您已经使用的那样,以及所有后续请求

【讨论】:

    猜你喜欢
    • 2017-07-01
    • 1970-01-01
    • 1970-01-01
    • 2022-01-23
    • 1970-01-01
    • 2015-09-12
    • 1970-01-01
    • 2014-08-24
    • 2020-08-16
    相关资源
    最近更新 更多