Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/366.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 调用第三方API时UI上的CORS问题_Javascript_Angular_Cors - Fatal编程技术网

Javascript 调用第三方API时UI上的CORS问题

Javascript 调用第三方API时UI上的CORS问题,javascript,angular,cors,Javascript,Angular,Cors,CORS问题已经困扰了一段时间了。我知道一些解决方案: 1) CORS:*(不推荐) 2) 为API调用创建代理 我正在寻找其他更简单的解决方案。我知道这可能是一个重复的线程/问题,但事情已经发生了变化,我希望找到另一个解决方案 PS:我使用Angular作为前端框架 除了您提到的那些,处理CORS的另一个解决方案是,使用第三方代理url,您可以将其附加到API url调用中 例如, var proxy = https://cors-anywhere.herokuapp.com/; var ur

CORS问题已经困扰了一段时间了。我知道一些解决方案:

1) CORS:*(不推荐)

2) 为API调用创建代理


我正在寻找其他更简单的解决方案。我知道这可能是一个重复的线程/问题,但事情已经发生了变化,我希望找到另一个解决方案


PS:我使用Angular作为前端框架

除了您提到的那些,处理CORS的另一个解决方案是,使用第三方代理url,您可以将其附加到API url调用中

例如,

var proxy = https://cors-anywhere.herokuapp.com/;
var url = proxy + "http://example.com" //now make your http request with this.
使用第三方代理URL的缺点是您必须依赖它们。万一他们倒下了,你就不能提出请求了

我认为,如果您正在处理Angular,则更倾向于使用
proxy
,这就是我在遇到此问题时的处理方式:

为什么您认为代理不是一个更简单的解决方案?如果你正在调用第三方API,你对CORS问题无能为力,因为CORS是一种服务器端安全功能,可以防止不必要的请求。如果API返回CORS错误,可能您不应该调用它……您不能使用自己的CORS头。你必须说服相关的第三方对他们的服务器自己做这件事。“我知道这可能是一个重复的线程/问题,但事情已经发生了变化”——不要问重复的问题。如果您认为答案不够充分,请重新关注现有问题。我知道angular中的proxy.conf.json更易于使用,但我们只能将其与ng serve一起使用。有没有一种方法可以为ng build--prod.配置文件。?