谷歌浏览器未设置从NodeJS / Express服务器发送的Cookie

用户名

我正在尝试在后端(带有Express-Session的Express / Node / Mongo)中设置经过身份验证的端点,并且可以在响应标头中将Cookie发送到客户端(Chrome版本53.0.2785.143),但是当我在开发控制台在“应用程序”->“存储”->“ Cookies”->“ http:// localhost:8100”下不存在,因此在后续的“请求标头”中没有任何内容发送回服务器。但是,当我测试使用Postman编写的代码时,似乎一切正常,这意味着服务器在登录时发送一个cookie,并且当我获取经过身份验证的终结点时该cookie被返回。

Response Headers
HTTP/1.1 200 OK
X-Powered-By: Express
Vary: X-HTTP-Method-Override
Access-Control-Allow-Origin: *
Access-Control-Allow-Methods: DELETE, PUT, GET
Access-Control-Allow-Headers: Origin, X-Requested-With, Content-Type, Accept
Content-Type: application/json; charset=utf-8
Content-Length: 1258
ETag: W/"4ea-X9Q0hp8ptccLVapzMZamYA"
set-cookie: connect.sid=s%3AyEaCZPUtH-rA0yQ3Osk-FNBHxQNYbFqp.gvwe%2FO0GSSfaX6i8Y29XD9vEo6ht2M%2FqL00wiFpntnU; Path=/
Date: Tue, 25 Oct 2016 01:28:59 GMT
Connection: keep-alive

Request Headers
POST /login HTTP/1.1
Host: localhost:8000
Connection: keep-alive
Content-Length: 51
Pragma: no-cache
Cache-Control: no-cache
Origin: http://localhost:8100
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_11_4) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/53.0.2785.143 Safari/537.36
Content-Type: application/json
Accept: */*
Referer: http://localhost:8100/
Accept-Encoding: gzip, deflate
Accept-Language: en-US,en;q=0.8

Request Payload
{"email":"[email protected]","password":"test123"}

Settings object for the session ID cookie:
{ path: '/', _expires: null, originalMaxAge: null, httpOnly: false }

session ID cookie name = 'connect.sid'.

Ionic2 service to login user.
public loginUser(user:Object):Observable<any>{
    let headers = new Headers();
    headers.append('Content-Type', 'application/json');
    return this.http.post('http://localhost:8000/login', JSON.stringify(user), {headers: headers})
            .map(this.extractData)
            .catch(this.handleError)
}

public extractData(res: Response) {
    console.log(res.headers); //cookie does not log here in response
    let body = res.json();
    return body || { };
}
基兰·戈帕尔(kiran Gopal)

通常,chrome不会为本地主机保存Cookie。请在Chrome中禁用您的网络安全。

如何禁用Chrome Web安全性?

"C:\Program Files (x86)\Google\Chrome\Application\chrome.exe" --user-data-dir="C:/Chrome dev session" --args --disable-web-security

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

浏览器未设置cookie

来自分类Dev

提取响应未设置浏览器Cookie

来自分类Dev

浏览器如何将Cookie与其发送Cookie的服务器相关联?

来自分类Dev

浏览器何时发送未从服务器接收到的Cookie?

来自分类Dev

浏览器发送OPTIONS请求是否不将cookie传送到服务器?

来自分类Dev

在Chrome浏览器中未设置Radgrid列宽

来自分类Dev

如何在谷歌浏览器中禁用自动设置

来自分类Dev

如何正确设置谷歌浏览器工作区

来自分类Dev

谷歌浏览器扩展 - 本地存储设置和获取

来自分类Dev

Cookie未发送到服务器

来自分类Dev

设置浏览器cookie

来自分类Dev

服务器发送的事件和浏览器限制

来自分类Dev

如何设置NodeJS Express服务器?

来自分类Dev

Express服务器发送空的PDF文件

来自分类Dev

在服务器关闭连接之前,浏览器不会响应服务器发送的事件

来自分类Dev

文件从浏览器发送到不是Web服务器的服务器

来自分类Dev

从服务器收到的Cookie是安全的,但是发送到服务器的Cookie是不安全的ASP.NET

来自分类Dev

div溢出超出浏览器宽度而未设置宽度

来自分类Dev

div溢出超出浏览器宽度而未设置宽度

来自分类Dev

React是否会在每个后续请求中自动发送服务器设置的cookie?

来自分类Dev

无法保持登录谷歌浏览器

来自分类Dev

jQuery的点击无法在谷歌浏览器

来自分类Dev

谷歌浏览器无法正常退出

来自分类Dev

如何导出谷歌浏览器书签

来自分类Dev

如何卸载谷歌浏览器?

来自分类Dev

谷歌浏览器无法正常退出

来自分类Dev

谷歌浏览器不想访问Facebook

来自分类Dev

谷歌浏览器导致系统死机

来自分类Dev

禁用谷歌浏览器快速搜索

Related 相关文章

热门标签

归档