【发布时间】:2017-05-24 14:43:13
【问题描述】:
我正在尝试利用 CORS 来发出发布请求。我遇到了几篇与 CORS 相关的文章/答案,但不知何故无法让它发挥作用。
据我了解,access-control-allow-origin: * 将设置在服务器端以使其正常工作,但我这里有一个 angular-cli 项目。
我的项目完全基于 Angular 2.1,不涉及后端服务器。任何有关如何正确设置的建议都将受到高度赞赏。
我得到的确切错误是:
"NetworkError: 404 Not Found - https://flowxo.com/hooks/a/rbpja7r2/?usertype=User"
控制台中的这个警告:
Cross-Origin Request Blocked: The Same Origin Policy disallows reading the
remote resource at https://flowxo.com/hooks/a/rbpja7r2/?usertype=User.
(Reason: CORS header 'Access-Control-Allow-Origin' missing).
更新:
这是我尝试发出 POST 请求的方式:
let headers = new Headers();
headers.append('Access-Control-Allow-Headers', 'Content-Type');
headers.append('Content-Type', 'application/json');
headers.append('Access-Control-Allow-Methods', 'POST, OPTIONS');
headers.append('Access-Control-Allow-Origin', '*');
return this.http.post(
this.flowxoUrl,
JSON.stringify(formData),
{headers: headers}
)
.map((res:Response) => res.json())
.catch((error:any) => Observable.throw(error.json().error || 'Server error')); //...errors if any
【问题讨论】:
-
你能分享你的服务器端代码吗,有一些 chrome 插件可以发出 CORS 请求。
-
不涉及后端服务器
-
在这种情况下,您需要使用 chrome 插件,这个应该可以工作 chrome.google.com/webstore/detail/allow-control-allow-origi/…
标签: angularjs api angular cors