【问题标题】:jQuery : Cross domain issuesjQuery:跨域问题
【发布时间】:2012-12-08 15:24:50
【问题描述】:

我正在使用 jsonp 并且除了某些功能外,一切都可以完美跨域运行..例如:

beforeSend:function(){
     errobj.show();
    errobj.html('<b>Loading...<\/b>');
  },

如果我跨域(子域)使用它,它永远不会显示加载。还有一些动画和显示和隐藏的东西永远不会工作。

有人对跨域 ajax/jquery 问题有任何想法吗?

【问题讨论】:

    标签: php jquery ajax


    【解决方案1】:

    出于安全原因,浏览器倾向于单方面阻止对服务于当前页面的域之外的 URL 进行的任何调用。使用JSONP,可以跨域请求内容是&lt;script&gt;标签。也检查这些链接
    Methods for Handling Cross-Domain Ajax Calls
    JQuery ajax cross domain

    [编辑]

    对于数据类型jsonp$(ajax) 中的beforesend() 也存在问题。跨域JSONP请求不使用XMLHTTPRequest,所以事件流程不同。beforesend() not firing in JSONP

    【讨论】:

    • 如果你正确阅读了我的问题..你会知道我在问什么..我已经在使用 jsonp..我不是在问如何获取或发送数据..我很清楚如何使用jsonp
    • @user1713941 抱歉,我刚刚发布了一些可能讨论跨域问题的资源(因为您怀疑它是跨域 ajax/jquery 问题)。
    • 你用firebug调试过吗?任何错误或警告。也可以尝试设置一些断点。
    • 我认为这是beforeSend 函数的问题。检查此链接beforeSend
    • 是的@Nandakumar V 你的想法是对的..我要删除之前发送并尝试简单的事情..一旦测试会让你知道