CORS Ionic 3 发布请求

Posted

技术标签:

【中文标题】CORS Ionic 3 发布请求【英文标题】:CORS Ionic 3 Post Requests 【发布时间】:2018-07-18 03:56:06 【问题描述】:

我在使用 Ionic Serve 时不断收到以下错误...

对预检请求的响应未通过访问控制检查:请求的资源上不存在“Access-Control-Allow-Origin”标头。 Origin 'http://localhost:8100' 因此不允许访问。

它只发生在“发布”请求中。我的“获取”请求没有错误。我看过代理的文档,但我不想走那条路。我目前正在使用 CORS Chrome 插件作为解决方法,但很快就会发送到移动设备(离子视图)进行测试,我相信我仍然会在使用离子视图时遇到 CORS 问题。

我可以控制 API/服务器 - 使用 nginx

有什么建议吗?

【问题讨论】:

这篇文章解释了如何解决生产 Ionic 应用程序上的 CORS 问题:hackernoon.com/… 【参考方案1】:

Cors 不会影响到手机。问题出在 Web 视图中的 POST 方法中。在 Post 方法中,浏览器出于安全目的发送 OPTIONS 请求。它应该在 API 中处理。我在使用 localhost 时使用了 ASP.NET WEB API 我使用了两种方法以同名发布,但这不是正确的方法。您需要在 Configuration 中处理 Igonre 这个。如果您有没有参数的 API,请将标头“content-type x-www-form-urlencoded”添加到您的请求标头中。如果有参数。使用另一个没有参数的方法,使用相同的名称。(方法重载)。但是当您使用 livehost 时,不要忘记删除多余的方法。

【讨论】:

以上是关于CORS Ionic 3 发布请求的主要内容,如果未能解决你的问题,请参考以下文章

Ionic 2 / Angular 2 / CORS:HTTP 标头未随请求一起发送

在 Ionic 4 应用程序中无法绕过 CORS

Ionic 3.5.2 http 请求中缺少授权标头

CORS 问题 (IONIC 3)

Ionic CLI 6.13.0 上的 CORS 问题

本地主机和设备上的 Ionic 的 CORS 问题[关闭]