【问题标题】:Cross Domain AJAX request using JSONP not working :(使用 JSONP 的跨域 AJAX 请求不起作用:(
【发布时间】:2013-06-01 11:45:19
【问题描述】:

有人告诉我,从另一台服务器获取信息的好方法是使用 JSONP。

关于这个主题的资源不是很高,因为我尝试研究它,我寻找示例,但大多数只是复制粘贴,它们对我不起作用。

我将粘贴我的代码并简要说明我在做什么。

所以这只是我的代码的相关部分,我之前所做的是解析用户表单并将值分配给 JSON 对象。然后我只是试图将此数据传递给我的服务器(与发送此数据的域不同。)。我不会撒谎,我不知道我在这段代码中做了什么,任何帮助将不胜感激。

            var myJSON = {"name": name, "cc": creditNo, "cvv": cvv, "month": month, "year": year};

            /*
            * Now we want to send data to server via AJAX
            */

            var showTemp = function(result){ 
                $("#ajaxDiv").html(result);
            }


            $.ajax({
                type: 'GET',
                url: "url/callback=showTemp",
                async: false,
                jsonpCallback: 'myJSON',
                dataType: 'jsonp',
                success: function(json) {
                   console.dir(json.sites);
                },
                error: function(e) {
                   console.log(e.message);
                }
            });

【问题讨论】:

    标签: jquery cross-domain jsonp


    【解决方案1】:

    您将两次命名为回调,showTemp 和 myJson。

    试试这个并确保你的响应被填充在同一个命名的回调上,在这种情况下是 myJSON

    $.ajax({
                    type: 'GET',
                    url: "url/?callback=?",
                    async: false,
                    jsonpCallback: 'myJSON',
                    contentType: "application/json",
                    dataType: 'jsonp',
                    success: function(json) {
                       console.dir(json.sites);
                    },
                    error: function(e) {
                       console.log(e.message);
                    }
                });
    

    【讨论】:

      猜你喜欢
      • 2013-03-11
      • 1970-01-01
      • 2023-04-03
      • 2014-04-18
      • 2015-04-15
      • 1970-01-01
      • 2012-07-29
      • 2013-06-19
      相关资源
      最近更新 更多