问题标签 [cors]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
1594 浏览

android - Android CORS 请求只工作一次?

在 Android 模拟器下测试 CORS 请求时,我偶然发现了一个奇怪的错误。试试下面的网站:http ://arunranga.com/examples/access-control/

第一次使用 CORS 请求时,一切似乎都正常。但是第二次就不行了!

我尝试了以下替代方案:

  • Android 2.1、2.2、3.0 模拟器 => 失败
  • Android 设备 (Samsung Apollo 5801) => 失败
  • 其他 CORS 站点(包括自制的 CORS 支持站点)=> 失败

重新启动浏览器后,它再次工作......但同样,只是第一次。

我想问题出在 Android Webkit 代码的某个地方。我有一些 Android 编程经验,但似乎找不到这个确切的问题。

有人遇到这个问题并找到解决方案吗?

0 投票
0 回答
494 浏览

android - Android:凭证总是与 CORS 请求一起发送?

发送 CORS 请求(XHR API)时,不应隐式发送凭据(W3C 规范)。只有在设置为true的选项时,才能进行。

显然Android没有考虑到这个规则?

可以在此处找到示例 CORS 系统。此示例似乎适用于 Mozilla(Firefox 和 Fennec)、Google Chrome 和 Safari,但不适用于 Android 浏览器。

任何人都可以确认这个缺陷吗?

格茨,马丁

0 投票
2 回答
7086 浏览

ajax - 如何通过跨域 ajax 获取响应头?

我正在尝试阅读文档,我必须承认这并不容易阅读。我没有问题(在添加 Access-Control-Allow-Origin 标头后)读取 responseText,但无法在除 Firefox 之外的任何地方获取响应标头。

所以,我的问题是使用跨域 ajax 获取响应标头的正确方法是什么?

我尝试使用(Access-Control-Expose-Headers),但再次未能读取标题。

0 投票
7 回答
638593 浏览

jquery - 将 jQuery Post 发送到 Google API 的 Access-Control-Allow-Origin 错误

我读了很多关于“Access-Control-Allow-Origin”错误的文章,但我不明白我必须解决什么:(

我正在使用 Google Moderator API,但是当我尝试添加新系列时,我收到:

我尝试使用和不使用回调参数,我尝试将“Access-Control-Allow-Origin *”添加到标题中。而且我不知道如何在此处使用 $.getJSON(如果适用),因为我必须添加 Authorization 标头,而且如果没有来自 $.ajax 的 beforeCall ,我不知道该怎么做:/

这个黑暗有什么光吗?

那是代码:

0 投票
1 回答
187 浏览

javascript - 无法通过 Ajax 检索 Perl 脚本的结果(同源策略问题)

所以,这个 Perl 脚本:

将根据收到的 POST 表单数据返回 XML 结果。

我在我的一个域(没有一个域)上有一个网页hacheck.tel.fer.hr,我想通过 Ajax 使用该 Perl 脚本。

现在,同源策略不允许我从我的域发送 Ajax 请求,如下所示:

上面的代码抛出这个错误:

XMLHttpRequest 无法加载 http://hacheck.tel.fer.hr/xml.pl。Access-Control-Allow-Origin 不允许来源http://ecmazing.com 。

我想知道我的选择是什么(我希望能够使用那个 Perl 脚本)。我知道将我的网页放到hacheck.tel.fer.hr域中显然可以解决我的问题(这实际上可能是可行的,但我必须为此联系管理员)。

但是还有其他选择吗?

我听说过CORS。它可以用来解决我的问题吗?如果我理解正确,使用 CORS,您必须在服务器上指定允许另一个域,并且来自该其他域的网页可以接收来自您的服务器(或类似的东西)的响应:)

0 投票
3 回答
2436 浏览

javascript - 关于客户端安全性,CORS 除了颠覆同源策略之外还有什么作用?

(如果没有,它是否真的提高了客户端的安全性?)

我正在考虑来自服务器 X 的脚本使用 XHR 从服务器 Y(支持 CORS)获取和运行不受信任的代码的情况。

(显然评估不受信任的代码是不好的™)

0 投票
15 回答
173233 浏览

json - 在 ASP.Net MVC 中设置 Access-Control-Allow-Origin - 最简单的方法

我有一个简单的操作方法,它返回一些 json。它在 ajax.example.com 上运行。我需要从另一个站点 someothersite.com 访问它。

如果我尝试调用它,我会得到预期的......:

我知道解决此问题的两种方法:JSONP和创建自定义 HttpHandler来设置标头。

没有更简单的方法吗?

一个简单的操作是否不可能定义允许的来源列表 - 或者简单地允许所有人?也许是动作过滤器?

最佳方案是...:

0 投票
3 回答
623 浏览

javascript - 是否可以防止浏览器发出跨方案 CORS 请求?

我正在创建一个 API,供通过 CORS 请求托管在不同域上的 Javascript 客户端使用。

我的 API 只能通过 HTTPS 访问。

我想限制对那些也从 HTTPS 域提供服务的 Javascript 客户端的访问。

阅读 CORS 规范 - http://www.w3.org/TR/cors/#user-agent-security - 似乎大多数用户代理会自动阻止 HTTPS 客户端到 HTTP API 请求。

是否可以要求反向 - 即阻止 HTTP 客户端访问我的 HTTPS API?

0 投票
4 回答
9320 浏览

node.js - 跨域事件源

我正在尝试使用 nodejs 创建一个 EventSource 服务器,它将跨域服务器请求。我正在发回 Access-Control-Allow-Origin 标头,但浏览器(也不是 Chrome 或 Opera)不会让我连接。有我发回的标题:

我怎样才能以正确的方式做到这一点?

问候

0 投票
1 回答
1627 浏览

jquery - 无法使用 jquery 的 ajax 访问授权所需的资源

我的服务器上有一个名为 sidunhosted.com/ungdav/test.json 的 webdav 主机(它是一个虚拟主机)

我有基本授权/ungdav/。这是我.htaccess的 sidunhosted.com/ungdav/ 文件。

我正在使用以下 jQuery 代码(带有萤火虫)来访问资源

如果我在 sidunhosted.com(交互转储:http://paste.pocoo.org/show/417127/ 上,此方法有效。但是如果我从其他网站调用它(交互转储: http://paste.pocoo.org/show/417128/ )不起作用(需要返回授权),即在其他一些网站上执行此代码时在萤火虫控制台上执行此代码网站(已加载 jQuery)。