Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/424.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/angular/29.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 解决承诺时的2个CORS问题_Javascript_Angular_Cors_Angular Services - Fatal编程技术网

Javascript 解决承诺时的2个CORS问题

Javascript 解决承诺时的2个CORS问题,javascript,angular,cors,angular-services,Javascript,Angular,Cors,Angular Services,我正在用Angular做一个服务调用,它给了我一个错误 XMLHttpRequest cannot load http://geo.groupkt.com/ip/172.217.3.14/json. No 'Access-Control-Allow-Origin' header is present on the requested resource. Origin 'http://localhost:3000' is therefore not allowed access 当我看到网络名称

我正在用Angular做一个服务调用,它给了我一个错误

XMLHttpRequest cannot load http://geo.groupkt.com/ip/172.217.3.14/json. No 'Access-Control-Allow-Origin' header is present on the requested resource. Origin 'http://localhost:3000' is therefore not allowed access
当我看到网络名称时,我找到了json,当我看到详细信息时,我找到了响应

Request URL:http://geo.groupkt.com/ip/172.217.3.14/json
Request Method:GET
Status Code:200 OK
Remote Address:127.0.0.1:8888
Response Headers
view source
Age:1
Cache-Control:no-cache, no-store, max-age=0, must-revalidate
Content-Encoding:gzip
Content-Length:232
Content-Type:application/json;charset=UTF-8
Date:Thu, 19 Jan 2017 14:51:51 GMT
Expires:0
Pragma:no-cache
Server:Apache-Coyote/1.1
Vary:Accept-Encoding
Via:1.1 localhost.localdomain
X-Content-Type-Options:nosniff
X-Frame-Options:DENY
X-XSS-Protection:1; mode=block
Request Headers
view source
Accept:application/json, text/plain, */*
Accept-Encoding:gzip, deflate, sdch
Accept-Language:en-US,en;q=0.8,hi;q=0.6,es;q=0.4
Host:geo.groupkt.com
Origin:http://localhost:3000
Proxy-Connection:keep-alive
Referer:http://localhost:3000/
User-Agent:Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/55.0.2883.87 Safari/537.36
我现在怀疑,即使网络说这通电话,CORS是否会发生?
那么为什么它会这样说呢?当我调试代码时,我也没能成功。

CORS可以防止对外部服务器进行JavaScript调用(例如,由于XSS)。要授予应用程序连接到服务器的权限,它需要使用一些标题进行响应:

Access-Control-Allow-Origin: yourHost.com   <the most important one>
Access-Control-Allow-Methods: POST, GET, OPTIONS <list of methods which you want to perform>
Access-Control-Allow-Headers: authorization, content-type
Access-Control-Allow-Credentials: true
访问控制允许来源:yourHost.com
访问控制允许方法:POST、GET、OPTIONS
访问控制允许标头:授权、内容类型
访问控制允许凭据:true
有关标题的详细信息: 第CORS节

您可以在此处阅读更多内容:


CORS可以防止您对外部服务器进行JavaScript调用(例如由于XSS)。要授予应用程序连接到服务器的权限,它需要使用一些标题进行响应:

Access-Control-Allow-Origin: yourHost.com   <the most important one>
Access-Control-Allow-Methods: POST, GET, OPTIONS <list of methods which you want to perform>
Access-Control-Allow-Headers: authorization, content-type
Access-Control-Allow-Credentials: true
访问控制允许来源:yourHost.com
访问控制允许方法:POST、GET、OPTIONS
访问控制允许标头:授权、内容类型
访问控制允许凭据:true
有关标题的详细信息: 第CORS节

您可以在此处阅读更多内容:


CORS的可能重复是浏览器/客户端的一项功能-因此,即使您的请求得到正确解决,您的浏览器也会因为跨源策略而阻止对资源的访问。服务器
http://geo.groupkt.com/ip/172.217.3.14/json
is-它不提供对本地主机的访问:3000拨打电话-最简单的解决方案是在运行ng2应用程序时使用代理-如果使用ng cli:CORS的可能副本是浏览器/客户端功能-因此,即使您的请求得到正确解决,由于跨源策略,浏览器会阻止对资源的访问。服务器
http://geo.groupkt.com/ip/172.217.3.14/json
is-它不提供对本地主机的访问:3000拨打电话-最简单的解决方案是在运行ng2应用程序时使用代理-如果使用ng cli: