【发布时间】:2013-05-08 21:00:15
【问题描述】:
我正在做一个项目,在使用 $.ajax 发出 GET 请求后,我收到 Access-Control-Allow-Origin 错误。但是,GET 请求被发送到服务器并且响应是预期的 XML 字符串。
由于该错误,success 函数永远不会触发,因此我无法读取 XML 响应,但我可以在日志中看到它。 error 函数不引用响应字符串,complete 函数也不引用。
无论 AJAX 请求是否失败,是否有另一种查看响应的方法?不幸的是,我无权访问服务器来修改来源限制,但我确实拥有这个盒子。
【问题讨论】:
-
没有。拒绝访问。您必须使用服务器 ajax 代理或第三方代理(例如 YQL)来请求它。
-
但是我收到了回复。是不是Access-Denied错误不让浏览器解析?
-
正确。由于它不是同源请求,因此您无法使用javascript访问它。
-
如果我正在访问本地设备(在这种情况下是 Apple TV),是否可以更改我的来源以使请求与域匹配?
-
不,您需要在您请求的服务器上使用正确的 CORS 标头来执行此操作。
标签: jquery ajax response access-control