Angularjs 带有标题的Angular js get请求-显示CORS错误

Angularjs 带有标题的Angular js get请求-显示CORS错误,angularjs,http,get,http-headers,Angularjs,Http,Get,Http Headers,在我的angular控制器代码中,我的http get方法不使用header,但在postman中使用相同的请求 $http({ method: 'GET', url: 'http://localhost:8080/api/profiles', headers: { 'Authorization': 'Bearer 78954642-sf25-4sd6-sdf2-99582369d5af', 'Content-Type':'text/plain' }

在我的angular控制器代码中,我的http get方法不使用header,但在postman中使用相同的请求

$http({
   method: 'GET',
   url: 'http://localhost:8080/api/profiles',
   headers: {
     'Authorization': 'Bearer 78954642-sf25-4sd6-sdf2-99582369d5af',
     'Content-Type':'text/plain'
    }
   }).then(function(success) {
     console.log(success);
  }, function(error) {
  });
显示以下错误

Response to preflight request doesn't pass access control check: No 'Access-Control-Allow-Origin' header is present on the requested resource. Origin 'http://quotebuilder' is therefore not allowed access. The response had HTTP status code 401.
我的请求头

OPTIONS /api/profiles HTTP/1.1
Host: localhost:8080
Connection: keep-alive
Pragma: no-cache
Cache-Control: no-cache
Access-Control-Request-Method: GET
Origin: http://quotebuilder
User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/56.0.2924.87 Safari/537.36
Access-Control-Request-Headers: authorization
Accept: */*
Referer: http://quotebuilder/login
Accept-Encoding: gzip, deflate, sdch, br
Accept-Language: en-US,en;q=0.8

这里怎么了?请帮助我解决此问题

您应该在服务器端禁用CORS才能使其正常工作。当资源从不同的域或端口(第一个资源本身所服务的域或端口除外)请求资源时,它会发出跨源HTTP请求。请参见dtails。如果您使用的是spring或其他服务器端web框架,则需要从那里禁用它。

您应该在服务器端禁用CORS,以使其正常工作。当资源从不同的域或端口(第一个资源本身所服务的域或端口除外)请求资源时,它会发出跨源HTTP请求。请参见dtails。如果您使用的是spring或其他服务器端web框架,您需要从那里禁用它。

您需要从chrome安装CORS插件,或者应该从API启用CORS。我认为您可以只传递响应头,它应该可以工作。当我在我的
响应
标题中添加
标题(访问控制允许方法“、”GET、POST、DELETE、PUT、OPTIONS“)
时,它对我起到了作用,如果这不起作用,请编辑你的web.xml文件(如果使用tomcat)。您需要从chrome安装CORS插件,或者应该从API启用CORS。我认为您可以只传递响应标题,它应该可以工作。当我添加
.headers(访问控制允许方法”,“获取、发布、删除、放置、选项”)时,它对我起到了作用
在我的
响应
标题中,如果不起作用,则编辑您的web.xml文件(如果使用tomcat)。是的,这是与CORS相关的问题,您必须更改服务器端的CORS设置。例如,如果您使用的是tomcat,请编辑web.xml文件以包含CORS标记。另一个解决方法是禁用ChromeEyes上的web安全,但如果您要将其部署到生产服务器上,则不应使用可能再次困扰您的黑客@playerone您是对的:)他应该仅在开发模式下禁用chrome安全。是的,这是与CORS相关的问题,您必须更改服务器端的CORS设置。例如,如果您使用的是tomcat,请编辑web.xml文件以包含CORS标记。另一个解决方法是在ChromeEyes上禁用web安全性,但如果您打算将其部署到生产服务器上,则不应使用可能再次困扰您的黑客@playerone您是对的:)他应该仅在开发模式下禁用chrome安全性