在 angularjs 中重复 ajax 次调用

duplicate ajax calls in angularjs

我正在使用 express-jwt 构建 restful api。现在客户端正在进行重复的 ajax 调用,第一个发起者是 angularjs,第二个发起者是另一个。第一个获得 204 作为响应代码,第二个获得 200 作为响应代码。我试图调试以找到此重复请求的来源,但我无法做到。

下面是 header 状态代码为 204 的详细信息

下面是 header 状态代码为 204 的详细信息

任何人都可以提出可能是什么问题吗?

第一次调用是OPTIONS类型。如果页面和 api 不在同一个域中,那是浏览器发送的 pre-flight 调用。

这次调用的目的是处理CORS。后端通常需要发送允许的请求方法类型(GET、POST 等)。如果所需的请求类型属于 returned.

,浏览器将发送真正的调用

这是响应示例 headers。

无论出于何种意图和目的,您都可以忽略它。它不包含任何通常有用的负载或 return 数据。

查看 AJAX in Chrome sending OPTIONS instead of GET/POST/PUT/DELETE? 了解更多信息。

这两个请求不同,一个是 OPTIONS,另一个是 GET

对于跨域请求,将内容类型设置为 application/x-www-form-urlencodedmultipart/form-datatext/plain 以外的任何内容都会触发浏览器发送预检 OPTIONS向服务器请求。

请求方法OPTIONS需要在服务器中处理,然后不处理就退出