【问题标题】:cross domain ajax testing in local environment本地环境中的跨域ajax测试
【发布时间】:2013-05-23 14:28:20
【问题描述】:

在本地开发环境(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/ 中的完整步骤进行操作 它对我没有用。有人可以提出解决方案吗?

【问题讨论】:

  • 你的意思是没有工作,错误是什么?。您可以在 hd-ad01 服务器上设置该 Http 标头并从本地环境连接到它吗?
  • 我可以在响应头上设置 Access-Cotntrol-Allow-Origin。但是我没有收到来自服务器的任何响应。根本没有错误。从萤火虫我看到呼叫的响应代码是 200 OK。但它根本没有响应选项卡。
  • 您需要使用getpostman.com 之类的东西来测试服务端,除非他们启用了 CORS,否则您将无法访问该 url。

标签: javascript ajax


【解决方案1】:

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

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

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

阿贾克斯:{ 数据类型:'html', //标题:{'X-fancyBox': true } }

谁能告诉我如何以编程方式修改标头值? 我尝试了以下方法,但对我来说没有成功

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

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

【讨论】:

    猜你喜欢
    • 2011-04-20
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-06-27
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多