0

在本地开发环境中(http://localhost.mydev.com:8081/xapp/x.htm),我需要进行 ajax 调用以打开 URL http://hd-ad01.mydev.com:8081/ yapp)并在fancybox中绘制响应。由于我在本地开发环境中,它变成了一个跨域。但是当它被部署到服务器时,它不会。有人可以建议我,如何使用提琴手或其他工具在本地测试我的 Ajax 调用?我尝试使用提琴手并修改了响应头以添加 oSession.oResponse.headers.Add("Access-Control-Allow-Origin", "*"); 我按照博客http://blog.caplin.com/2010/03/19/using-fiddler-to-help-develop-cross-domain-capable-javascript-web-applications/中的完整步骤进行 操作为我锻炼。有人可以提出解决方案吗?

4

1 回答 1

0

这是因为 fancybox jquery 插件将请求头 Access-Control-Request-Header 设置为 x-fancyBox

尽管我在响应标头中将 Access-Control-Allow-Origin 设置为 *,但此参数使我的跨域调用失败。

我已经在fancybox 2.1.4 源代码中注释了标头的默认值并尝试了相同的方法,我能够进行跨域ajax 调用

ajax : { dataType : 'html', //headers : { 'X-fancyBox': true } }

有人可以告诉我如何以编程方式修改标题值吗?我尝试了以下方法,但对我没有效果

数据类型:'html',标题:{'X-fancyBox': false }

数据类型:'html',标题:{}

于 2013-05-23T19:18:51.773 回答