Angularjs $http, 它似乎不明白 "Set-Cookie" 在回应中
我有 nodejs express REST api 使用护照模块进行身份验证。
登录方法 /GET/ 返回文件。 cookie 在标题中。 当我称之为 Chrome, 它适用于我的文件 cookie 安装在我的浏览器中。
但如果我通过 $http 的 Angularjs, 文件 cookie 将无法安装。
正如你可以看到的那样 Set-Cookie 存在于服务响应标题中 http.
可能是, HttpOnly 也许这个问题的来源? 如果是这样,我怎么能改变它? 这是我的快递配置 :
谢谢您的帮助。
登录方法 /GET/ 返回文件。 cookie 在标题中。 当我称之为 Chrome, 它适用于我的文件 cookie 安装在我的浏览器中。
但如果我通过 $http 的 Angularjs, 文件 cookie 将无法安装。
Set-Cookie:connect.sid=s%3Ad7cZf3DSnz-IbLA_eNjQr-YR.R%2FytSJyd9cEhX%2BTBkmAQ6WFcEHAuPJjdXk3oq3YyFfI; Path=/; HttpOnly
正如你可以看到的那样 Set-Cookie 存在于服务响应标题中 http.
可能是, HttpOnly 也许这个问题的来源? 如果是这样,我怎么能改变它? 这是我的快递配置 :
app.configure/function // {
app.use/allowCrossDomain/;
app.use/express.bodyParser///;
app.use/express.cookieParser///
app.use/express.session/{ secret: 'this is a secret' }//;
app.use/flash///;
//passport init
app.use/passport.initialize///;
app.use/passport.session///;
app.set/'port', process.env.PORT || 8080/;
}/;
谢谢您的帮助。
没有找到相关结果
已邀请:
5 个回复
风见雨下
赞同来自:
来自文件 XHR:
https://developer.mozilla.org/ ... _CORS
提供最有趣的机会 XMLHttpRequest, 所以我。
访问控制是能力 "credentialed" 请求,哪个
知道O. HTTP 文件 cookie 和 HTTP 身份验证信息。 经过
横行呼叫中的默认值 XMLHttpRequest 浏览器NE。
将发送凭据。 在 XMLHttpRequest 必须安装特定标志。
调用时的对象。
您可以使用该对象 options 要配置凭据的使用,请参阅
http://docs.angularjs.org/api/ng.%24http
例子:
八刀丁二
赞同来自:
- 它只是裹着 XHR 浏览器,就像 jQuery
和朋友。 这意味着您的浏览器将处理文件。 cookie 一般。
我假设文件 cookie
安装了,但你试着阅读它
.
禁止脚本可以访问该文件 cookie.
这是一件好事。
有助于软化攻击 XSS. 它使恶意脚本无法窃取用户会话令牌 /因此,它登录/.
不要关闭
.
你仍然不需要饼干。 只要
- 它只是一个贝壳 XHR, 浏览器将自动发送文件 cookie 下一个请求。 您可以通过在Developer工具栏中查看请求来验证。
冰洋
赞同来自:
询问 angular
并安装 :
在我的快速服务器配置中。 所以我的文件 cookie 很好地显示在文件列表中 cookie 我的浏览器。
江南孤鹜
赞同来自:
在
Angular
我使用以下代码片段使用
通过我的要求。
在我得到一个决定之前的节点中,我刚刚初始化 CORS
从
帮助
但现在我实现了以下代码片段
在哪里
http://localhost:5000
- 这是我申请的结束点 Angular. 你
你可以安装它 URL 动态地从文件中动态 config 或者 .env.
我希望以上解决方案为您的问题工作。
君笑尘
赞同来自:
:
但我不这么认为 Angular 非常小心文件 cookie, 它们由浏览器处理 /我同意 @josh3736, 你有什么要保存
到
/.
由于您的文件,可以以某种方式 cookie 是 /浏览器/会话文件 cookie. 您可以尝试看看它是否有效,显式安装
对于文件。 cookie /以毫秒为单位/.