Questions tagged «cors»

当您在浏览器devtools控制台中看到有关CORS(跨域资源共享)的消息时,请使用此标记-例如,您的浏览器记录了有关Access-Control-Allow-Origin的错误,并且您想知道如何消除该错误。也要针对CORS协议的其他问题(在Fetch Living标准中定义为使用响应标头告知浏览器放宽同源策略并允许跨域XHR / Fetch / Ajax请求的方式)。

6
如何添加Access-Control-Allow-Origin标头
我正在设计一个网站(例如,mywebsite.com),并且此站点从另一个站点(例如anothersite.com)加载字体字体。我在Firefox中加载字体字体时遇到问题,我在此博客上阅读: Firefox(从v3.5开始支持@ font-face)默认情况下不允许跨域字体。这意味着必须从相同的域(和子域)提供字体,除非您可以在字体中添加“ Access-Control-Allow-Origin”标头。 如何将Access-Control-Allow-Origin标头设置为字体?
99 header  cors  font-face 


5
CORS:凭据模式为“包含”
是的,我知道您在想什么-另一个CORS问题,但是这次我很困惑。 因此,开始时,实际的错误消息为: XMLHttpRequest无法加载http://localhost/Foo.API/token。当请求的凭据模式为'include'时,响应中'Access-Control-Allow-Origin'标头的值不得为通配符'* '。因此,不允许访问源' http:// localhost:5000 '。XMLHttpRequest发起的请求的凭据模式由withCredentials属性控制。 我不确定凭证模式的含义是'include'吗? 因此,当我在邮递员中执行请求时,没有遇到这样的错误: 但是,当我通过我的angularjs Web应用访问相同的请求时,我为这个错误感到困惑。这是我的angualrjs请求/响应。如您所见,响应为OK 200,但我仍然收到CORS错误: 提琴手的请求和响应: 下图演示了Web前端对API的请求和响应 因此,根据我在网上阅读的所有其他帖子,似乎我在做正确的事情,这就是为什么我无法理解该错误的原因。最后,这是我在angualrjs(登录工厂)中使用的代码: API中的CORS实现-参考目的: 方法1: public static class WebApiConfig { public static void Register(HttpConfiguration config) { EnableCrossSiteRequests(config); } private static void EnableCrossSiteRequests(HttpConfiguration config) { var cors = new EnableCorsAttribute("*", "*", "*") { SupportsCredentials = true }; config.EnableCors(cors); } …

10
具有多个域的访问控制允许来源
在我的web.config中,我想为access-control-allow-origin指令指定多个域。我不想用*。我试过这种语法: <add name="Access-Control-Allow-Origin" value="http://localhost:1506, http://localhost:1502" /> 这个 <add name="Access-Control-Allow-Origin" value="http://localhost:1506 http://localhost:1502" /> 这个 <add name="Access-Control-Allow-Origin" value="http://localhost:1506; http://localhost:1502" /> 还有这个 <add name="Access-Control-Allow-Origin" value="http://localhost:1506" /> <add name="Access-Control-Allow-Origin" value="http://localhost:1502" /> 但它们都不起作用。正确的语法是什么?
97 asp.net  iis  cors  web-config 

5
允许对Heroku上的Express / Node.js应用程序进行CORS REST请求
我已经在用于node.js的快速框架上编写了REST API,该API可以处理来自Chrome中的js控制台的请求以及URL栏等。域(CORS)。 由javascript前端自动发出的第一个请求是对/ api / search?uri =的,并且似乎对“预检” OPTIONS请求失败。 在我的express应用中,我使用以下方法添加了CORS标头: var allowCrossDomain = function(req, res, next) { res.header('Access-Control-Allow-Origin', '*'); res.header('Access-Control-Allow-Methods', 'GET,PUT,POST,DELETE,OPTIONS'); res.header('Access-Control-Allow-Headers', 'Content-Type, Authorization, Content-Length, X-Requested-With'); // intercept OPTIONS method if ('OPTIONS' == req.method) { res.send(200); } else { next(); } }; 和: app.configure(function () { app.use(express.bodyParser()); app.use(express.methodOverride()); app.use(app.router); app.use(allowCrossDomain); app.use(express.static(path.join(application_root, …
97 node.js  rest  heroku  express  cors 

2
CORS-如何“预检” httprequest?
我正在尝试向WCF服务(我拥有)发出跨域HTTP请求。我已经阅读了几种处理跨域脚本限制的技术。因为我的服务必须同时容纳GET和POST请求,所以我无法实现某些动态脚本标签,其src是GET请求的URL。由于我可以自由地在服务器上进行更改,因此我开始尝试实现一种变通方法,该变通方法包括配置服务器响应以包括“ Access-Control-Allow-Origin”标头以及带有和OPTIONS请求的“预检”请求。我从这篇文章中得到了一个主意:让CORS工作 在服务器端,我的网络方法是在HTTP响应中添加“ Access-Control-Allow-Origin:*”。我可以看到响应现在确实包含此标头。我的问题是:如何“预检”请求(选项)?我正在使用jQuery.getJSON发出GET请求,但浏览器立即以臭名昭著地取消了该请求: Access-Control-Allow-Origin不允许使用原始http:// localhost 有人熟悉这种CORS技术吗?客户需要对我的请求进行哪些更改? 谢谢!
94 javascript  wcf  jquery  cors 

10
请求的资源错误中不存在“ Access-Control-Allow-Origin”标头
我正在尝试获取新闻网站的供稿。以为我会使用Google的feed API将feedburner供稿转换为json。以下网址将以json格式从Feed中返回10个帖子。http://ajax.googleapis.com/ajax/services/feed/load?v=1.0&num=10&q=http://feeds.feedburner.com/mathrubhumi 我用下面的代码来获取上述URL的内容 $.ajax({ type: "GET", dataType: "jsonp", url: "http://ajax.googleapis.com/ajax/services/feed/load", data: { "v": "1.0", "num": "10", "q": "http://feeds.feedburner.com/mathrubhumi" }, success: function(result) { //..... } }); 但它不起作用,出现以下错误 XMLHttpRequest无法加载 http://ajax.googleapis.com/ajax/services/feed/load?v=1.0&num=10&q=http%3A%2F%2Ffeeds.feedburner.com%2Fmathrubhumi。所请求的资源上没有“ Access-Control-Allow-Origin”标头。因此,不允许访问源“ http:// localhost ”。 我该如何解决?
93 javascript  jquery  json  ajax  cors 

6
如何跳过“选项”预检请求?
我开发了一个PhoneGap应用程序,现在正在将其转换为移动网站。除了一处小故障,一切都可以顺利进行。我通过POST请求使用了某个第三方API,该API在该应用中可以正常运行,但在移动网站版本中却无法运行。 仔细查看后,似乎AngularJS(我想实际上是浏览器)正在首先发送OPTIONS请求。今天,我对CORS有了很多了解,但似乎无法弄清楚如何完全禁用它。我没有访问该API的权限(因此无法在那一侧进行更改),但他们已将我正在处理的域添加到其Access-Control-Allow-Origin标头中。 这是我正在谈论的代码: var request = { language: 'fr', barcodes: [ { barcode: 'somebarcode', description: 'Description goes here' } ] }; } var config = { headers: { 'Cache-Control': 'no-cache', 'Content-Type': 'application/json' } }; $http.post('http://somedomain.be/trackinginfo', request, config).success(function(data, status) { callback(undefined, data); }).error(function(data, status) { var err = new Error('Error message'); …
92 angularjs  post  cors 

10
.htaccess中的标题集Access-Control-Allow-Origin不起作用
我不明白为什么我的.htaccess标题设置不起作用。 我的.htaccess文件内容: Header set Access-Control-Allow-Origin * Header always set Access-Control-Allow-Methods "POST, GET, OPTIONS, DELETE, PUT" Header always set Access-Control-Allow-Headers "*" RewriteEngine On RewriteCond %{REQUEST_FILENAME} !-f RewriteRule ^(.*)$ index.php [QSA,L] 但是,当我删除Header并将它们添加进来时,index.php一切正常。 header("Access-Control-Allow-Origin: *"); header("Access-Control-Allow-Methods: PUT, GET, POST, DELETE, OPTIONS"); header("Access-Control-Allow-Headers: *"); 我想念什么?

2
jQuery xml错误'请求的资源上没有'Access-Control-Allow-Origin'标头。
我正在从事我的这个个人项目,只是出于娱乐目的,我想阅读位于http://www.ecb.europa.eu/stats/eurofxref/eurofxref-daily.xml的xml文件, 并解析xml和用它在货币之间转换价值。 到目前为止,我想出了下面的代码,该代码是基本的,可以读取xml,但是出现以下错误。 XMLHttpRequest无法加载****。所请求的资源上没有“ Access-Control-Allow-Origin”标头。因此,不允许访问原始站点“ http://run.jsbin.com ”。 $(document).ready( function() { $.ajax({ type: 'GET', url: 'http://www.ecb.europa.eu/stats/eurofxref/eurofxref-daily.xml', dataType: 'xml', success: function(xml){ alert('aaa'); } }); } ); 我没有发现我的代码有什么问题,所以我希望有人可以指出我的代码有什么问题以及如何解决。

10
在IIS7上启用跨域资源共享
我最近遇到了将Javascript请求发布到另一个域的问题。默认情况下,不允许将XHR发布到其他域。 按照http://enable-cors.org/的说明,我在另一个域上启用了此功能。 <?xml version="1.0" encoding="utf-8"?> <configuration> <system.webServer> <httpProtocol> <customHeaders> <add name="Access-Control-Allow-Origin" value="*" /> <add name="Access-Control-Allow-Methods" value="GET,PUT,POST,DELETE,OPTIONS" /> <add name="Access-Control-Allow-Headers" value="Content-Type" /> </customHeaders> </httpProtocol> </system.webServer> </configuration> 现在一切正常,但是在返回有效的200响应之前,它仍然返回405响应。 Request URL:http://testapi.nottherealsite.com/api/Reporting/RunReport Request Method:OPTIONS Status Code:405 Method Not Allowed Request Headersview source Accept:*/* Accept-Charset:ISO-8859-1,utf-8;q=0.7,*;q=0.3 Accept-Encoding:gzip,deflate,sdch Accept-Language:en-GB,en-US;q=0.8,en;q=0.6 Access-Control-Request-Headers:origin, content-type, accept Access-Control-Request-Method:POST Connection:keep-alive Host:testapi.nottherealsite.com Origin:http://test.nottherealsite.com Referer:http://test.nottherealsite.com/Reporting …

6
邮递员的CORS
这个问题被问了几次,但我还是不明白: 当我阅读有关的答案时 没有“ Access-Control-Allow-Origin”标头 问题,它说应在请求的服务器上设置一个设置,以允许跨域:add_header 'Access-Control-Allow-Origin' '*';。 但是,请告诉我为什么在向邮递员(是客户端)询问时,它的工作原理很吸引人,并且我收到所请求服务器的答复? 谢谢
89 http  cors  postman 

10
如何在烧瓶中启用CORS
我正在尝试使用jquery进行跨源请求,但它一直被消息拒绝 XMLHttpRequest无法加载http:// ...请求的资源上不存在“ Access-Control-Allow-Origin”标头。因此,不能访问Origin...。 我正在使用flask,heroku和jquery 客户端代码如下所示: $(document).ready(function() { $('#submit_contact').click(function(e){ e.preventDefault(); $.ajax({ type: 'POST', url: 'http://...', // data: [ // { name: "name", value: $('name').val()}, // { name: "email", value: $('email').val() }, // { name: "phone", value: $('phone').val()}, // { name: "description", value: $('desc').val()} // // ], data:"name=3&email=3&phone=3&description=3", crossDomain:true, success: function(msg) …
89 jquery  python  heroku  flask  cors 

2
AngularJS $ http,CORS和http身份验证
因为在AngularJS中使用CORS和http身份验证可能很棘手,所以我编辑了问题以分享一个经验教训。首先,我要感谢igorzg。他的回答对我很有帮助。场景如下:您想使用AngularJS $ http服务将POST请求发送到另一个域。获取AngularJS和服务器设置时,需要注意一些棘手的事情。 首先:在您的应用程序配置中,您必须允许跨域调用 /** * Cors usage example. * @author Georgi Naumov * gonaumov@gmail.com for contacts and * suggestions. **/ app.config(function($httpProvider) { //Enable cross domain calls $httpProvider.defaults.useXDomain = true; }); 第二:您必须指定withCredentials:true,并在请求中输入用户名和密码。 /** * Cors usage example. * @author Georgi Naumov * gonaumov@gmail.com for contacts and * suggestions. **/ $http({ …
88 angularjs  cors 

5
一个CORS POST请求可以在普通JavaScript上运行,但是为什么不使用jQuery?
我正在尝试发出跨源发帖请求,并且使它JavaScript像下面这样简单地工作: var request = new XMLHttpRequest(); var params = "action=something"; request.open('POST', url, true); request.onreadystatechange = function() {if (request.readyState==4) alert("It worked!");}; request.setRequestHeader("Content-type", "application/x-www-form-urlencoded"); request.setRequestHeader("Content-length", params.length); request.setRequestHeader("Connection", "close"); request.send(params); 但是我想使用jQuery,但是我无法使用它。这是我正在尝试的: $.ajax(url, { type:"POST", dataType:"json", data:{action:"something"}, success:function(data, textStatus, jqXHR) {alert("success");}, error: function(jqXHR, textStatus, errorThrown) {alert("failure");} }); 这导致失败。如果有人知道为什么jQuery不起作用,请告诉我们。谢谢。 (我正在使用jQuery1.5.1和Firefox 4.0,并且我的服务器使用正确的Access-Control-Allow-Origin标头进行响应)

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.