【问题标题】:Accessing cross-domain data using jsonp使用jsonp访问跨域数据
【发布时间】:2011-07-27 13:44:06
【问题描述】:

好吧,我正在尝试访问 php web 服务(返回 jsonp 和 url 格式为 http://service.com/service.jsonp)。首先它默默地失败了。因此,我尝试在直接 Visual Studio 和 IE 中调试以下代码。

<script type="text/javascript">
    $(document).ready(function () {
        $('#btnClick').click(function () {
            $.ajax({
                url: "http://url.jsonp",
                dataType: "jsonp",
                jsonp: "data",
                jsonpCallback: "jsonpcallback"
            });

            function jsonpcallback(data) {
                alert('doinng it now');
            }
        });
    });
</script>

点击后,数据进入VS(这是一个正确的jsonp输出)但是VS抛出一个错误。结果如下:

复制代码

data({"code":001,"msg":"true","data":{"obj1":"val1","obj2":"val2"}})

VS 中的错误:Microsoft JScript 运行时错误:“数据”未定义

【问题讨论】:

    标签: php jquery service jsonp


    【解决方案1】:

    看来,服务器的返回是错误的。给定您的 jQuery 参数,结果应该类似于 jsonpcallback({...})。你能检查一下,请求的 URL 是这样的吗:

     http://url.jsonp/?data=jsonpcallback
    

    如果是,服务器端做错了,将 GET 参数名称与其值混合在一起。

    【讨论】:

      猜你喜欢
      • 2014-05-18
      • 2012-11-05
      • 1970-01-01
      • 2013-10-23
      • 2013-09-26
      • 1970-01-01
      • 1970-01-01
      • 2014-12-20
      • 2014-04-19
      相关资源
      最近更新 更多