问题标签 [xdomainrequest]
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.
ajax - Is it IMPOSSIBLE to POST JSON with XDomainRequest?
As I am not able to find a way to set the content-type to JSON for the data I sent via XDomainRequest,
I naturally ask:
Is it IMPOSSIBLE to POST JSON with XDomainRequest?
"Only text/plain is supported for the request's Content-Type header"
ajax - 跨域ajax jsonp请求在IE8中不起作用
使用 jquery-1.9.1 ,我启用了 CORS 支持。
然后我发出如下所示的 ajax 请求,我还从服务器端启用了 jsonp 回调支持。
我已经在 jboss 中部署了它并从另一台计算机(不同的域/IP 地址)访问了该页面。此 ajax 调用适用于另一台计算机和同一台计算机的 FF 和 Chrome。
它也适用于 IE,但在同一台计算机上。
当从我部署的计算机以外的其他计算机访问时,将无法在 IE 中工作。
谷歌搜索后,我了解到 IE* 不允许由 jquery 进行的跨域 ajax 调用。而且 jquery 不支持 IE 的 XDomain 对象。
总而言之,如何让 jquery 使用 IE 的 XDomain 对象?,我几乎完成了应用程序(我的错,我没有检查 XDomain 的事情)。我无法再次重建代码。还有其他解决方案吗?
ajax - XDomainRequest 中止 IE 9 上的 POST
我正在做一个跨域 Ajax 调用。
我的代码:
上面的代码在所有浏览器中都可以正常工作,但在 IE 中有时会显示类似 (aborted) 的错误。
为了克服这个错误,我在谷歌搜索并没有找到任何好的解决方案。
您可以看到显示(中止)的错误消息。 http://postimg.org/image/k01u6t9v5/
当我对特定 URL 进行单独调用时,它没有显示任何(中止)消息(显示成功警报)。但是当我进行多次调用(如图所示)时,它会显示出这种类型的错误。
如何克服这个问题?
请帮忙
提前致谢
javascript - XDomainRequest 发布数据未显示
我无法通过 Internet Explorer XDomainRequest 获取 POST 数据。简直什么都没有出现。。
我创造了一个小提琴
parim.ee/test.php只是打印出来$_POST
,$_REQUEST
变量如下:
internet-explorer - IE 的骨干 fetch() 失败
我正在使用 Backbone 的 fetch 从远程服务器获取数据。它适用于除 IE 之外的所有浏览器(当然),因为 IE 要求您使用 XDomainRequest 而不是 XHR 进行跨站点。我是否必须用类似下面的代码替换应用程序中的每个提取?
当我使用上述代码时,我也收到 SCRIPT5: "Access is denied" 错误。
是否有可能在 IE 中没有正确处理主干提取,或者我做错了什么?
ruby-on-rails - 让 Rails 从 XDR 跨域请求中解析 JSON,内容类型为:nil
我正在构建一个客户端应用程序,它使用 CORS 将 JSON 跨域发布到不同服务器上的 Rails 3.2 应用程序。不幸的是,我们需要支持 IE9,这意味着我们回退到使用 XDomainRequest (XDR) 在 IE 中发送我们的跨域请求。
XDR 的主要限制是它不支持设置像“Content-type”这样的标头,这意味着 Rails 服务器不知道它正在接收 JSON,因此不解析它。
我通过使用jQuery.param
将数据作为 url 编码的表单数据发送来简单地解决了这个问题。但是,我们需要发送的一些数据是嵌套的 GeoJSON,它会出现乱码jQuery.param
,所以我必须将 POST 正文作为 JSON 发送。
在 config/initializers/wrap_parameters.rb 我设置:
model_name
...所以当内容类型为 nil 时,ActionController 将参数嵌套在里面。
但是,我仍然需要 Rails 来尝试JSON.parse()
从请求 where 中获取数据"Content-type" => nil
。我可以在需要它的控制器中手动执行此操作(这不是很干净),但我希望我能够让 Rails 为所有{content-type: nil}
请求执行此操作。
我一直在查看 Rails 源代码,但我发现的内容并没有让我很有希望。这个方法似乎被硬编码来检查:json,如果是,则解析,这意味着我不能从配置中修改它: https ://github.com/rails/rails/blob/master/actionpack/lib/action_dispatch/中间件/params_parser.rb#L43
谁能想出一个聪明的解决方案?
javascript - IE8/9 AJAX/CORS (XDomainRequest) 发送referer header
我XDomainRequest
在 IE8 & 9 中使用向服务器发送请求。在XMLHttpRequests
其他浏览器中,anOrigin
和Referer
header 都被发送,看起来像这样:
但XDomainRequest
只发送 Origin(所以我看不到完整的调用 URL)。有没有办法强制它也发送Referer?我试图避免将其作为查询字符串或 POST 参数发送。
我知道这XDomainRequest
不允许自定义标头,但我希望因为 Referer 是标准标头,所以可能有某种方法可以启用它。
node.js - 将用户/通行证从 IE8/9 发送到 node.js 代理
我们有使用 REST API 的主干.js 应用程序。每个请求用户/通行证都应该发送到 API。这是我们发送请求的方式:
`Backbone.BasicAuth.set(tempUser, tempPass);
这不适用于 IE 8/9,因此我们制作了 node.js 服务器,并使用 node-http-proxy 模块制作了代理服务器,它将拦截所有请求。
这是节点代理服务器:
我们现在的问题是将用户/通行证发送到节点代理服务器,我们知道 XDomainRequest 不支持自定义标头,并且我们不喜欢将用户/通行证作为查询字符串发送(它不安全)。
有没有一种方法可以将用户/密码从 IE 8/9 发送到节点代理服务器?
internet-explorer - 允许在 IE9 或更早版本中通过 XHR 请求 CORS DELETE
根据我在 IE9/IE8 中阅读的有关 CORS 支持的所有文档,似乎很清楚:
- 您无法在这些浏览器中使用
XMLHttpRequest
. 您必须使用 IE 的专有XDomainRequest
. XDomainRequest
不支持预检。我对这个限制的理解表明您只能发送 POST 或 GET CORS 请求,并且这些请求可能只包含简单的标头。此外,微软对 XDR 请求还有其他非常奇怪的限制,但这在这里并不完全重要。
所以,我所拥有的是一个页面http://192.168.1.1:8080
。使用XMLHttpRequest
时,我试图向 发送 DELETE 请求http://192.168.1.1.9000
。我完全预料到这会失败。在我重新考虑相关请求以确保它在我切换到使用 XDR 后适用于 CORS 请求之前,我只是在进行完整性检查。同样,我在这里使用 IE8。
奇怪的是,请求似乎成功了。DELETE 操作处理程序在服务器的 9000 端口被命中。我返回了响应,并且能够访问responseText
XHR 对象实例。
我无法想象为什么这实际上有效。似乎不应该有,除非我在这里遗漏了一些东西。有没有人有任何想法?
javascript - XDomainRequest 可以用来加载和绘制图像吗?
我正在从不同域的服务器加载图像。这些图像启用了 CORS(它们有这个标题:)Access-Control-Allow-Origin: *
。在现代浏览器中,使用image.crossOrigin = ''
,我可以安全地将它们绘制到<canvas>
.
我也想在 Internet Explorer 9 上做同样的事情。IE9 不支持crossOrigin
图像。它确实具有XDomainRequest
使用标头的跨域请求Access-Control-Allow-Origin
。
是否可以通过加载 PNGXDomainRequest
并将其绘制到画布上?