在OPTIONS请求中未发送Cookie

时间:2017-01-20 09:28:06

标签: javascript angularjs ajax azure cookies

对于我正在处理的Angular 1应用程序,使用cookie身份验证。问题是:在进行OPTIONS调用时,不会发送cookie,服务器会尝试将用户重定向到再次登录。只是想知道,它的“错误”是什么?服务器(Azure API应用程序)还是前端?如果是前端,如何在OPTIONS电话上发送Cookie?我正在使用augular-resource并将其配置如下:

$httpProvider.defaults.withCredentials = true

1 个答案:

答案 0 :(得分:9)

specification says

  

否则,请进行预检请求。使用引用来源,使用引用来源作为覆盖引用来源,使用OPTIONS方法设置阻止Cookie标记,并使用以下附加约束... 排除用户凭据,从原始来源获取请求URL。

and also

  

出于本规范的目的,术语用户凭据是指 cookie ,HTTP身份验证和客户端SSL证书,这些证书将根据用户代理以前与源的交互发送。具体而言,它不涉及代理身份验证或Origin标头。

因此客户端不应发送cookie,服务器应能够响应预检请求,而无需首先进行身份验证。