【问题标题】:Request Method changed to OPTIONS / CORS with Angular - Flask请求方法更改为 OPTIONS / CORS with Angular - Flask
【发布时间】:2015-03-11 06:12:19
【问题描述】:

我正在开发一个在多个客户端之间共享资源的网络应用程序。在网上搜索了相当长的时间后,我选择了基于令牌的身份验证并决定使用它。

我在 clint 端使用 AngularJS / 拦截器将令牌添加到请求标头

if ($localStorage.token) {
    config.headers.TOKEN = $localStorage.token;
}
...
// 
return config ; 

在服务器端, 使用 flask-cors 处理跨域请求的 Flask 应用程序。 现在的问题是,自从我添加了拦截器部分以来,所有请求都作为 OPTIONS 发送(无论原始方法如何 - $http.post() 或 ..)

我读了similar question,但答案集中在快递上,我无法在这里修复它。 这是我的 cors 配置:

cors = CORS(application, resources={r"/api/*": {"origins": "*"}}, allow_headers=['X-Requested-With', 'Content-Type', 'TOKEN', 'Accept'])

除了修复它,为什么会发生这种情况?这个 OPTIONS 请求在 CORS 中扮演什么角色?

【问题讨论】:

    标签: angularjs flask cors


    【解决方案1】:

    Options 是客户端库将发送到目标主机的请求,以检查是否允许请求主机以及在发送原始 post put get 请求之前对资源允许哪些方法。

    【讨论】:

      猜你喜欢
      • 2018-06-23
      • 2015-09-01
      • 1970-01-01
      • 1970-01-01
      • 2018-01-03
      • 2015-06-11
      • 2015-03-01
      • 2018-11-19
      • 1970-01-01
      相关资源
      最近更新 更多