【问题标题】:JSP AJAX return NULLJSP AJAX 返回 NULL
【发布时间】:2013-11-12 05:47:30
【问题描述】:

我使用 JQuery Ajax 在 jsp 中调用 REST api 但无论我如何调用它都会返回 null 但它可以在 html 中工作。有什么办法可以解决这个问题。似乎无法在网络中找到解决方案。


$(document).ready(function () {
    alert('ready');
    var accessKey = 'xkg8VRu6Ol+gMH+SUamkRIEB7fKzhwMvfMo/2U8UJcFhdvR4yN1GutmUIA3A6r3LDhot215OVVkZvNRzjl28TNUZgYFSswOi';
    var thisUrl = 'http://www.onemap.sg/API/services.svc/getToken?accessKEY=' + accessKey;
    $.ajax({
        type: "GET",
        url: thisUrl,
        dataType: 'application/json',
        success: function (data) {

            alert('data is:' + data.GetToken[0].NewToken);
        }
    });
    alert(thisUrl);
});

【问题讨论】:

  • 你可能不应该把你的访问密钥放在公共论坛上
  • accesskey 是公钥仅适用于本地主机。我没有发布我的个人密钥

标签: javascript jquery ajax jsp null


【解决方案1】:

dataType 应该是jsonp

$(document).ready(function () {
    var thisUrl = 'http://www.onemap.sg/API/services.svc/getToken?accessKEY=' + accessKey;
    $.ajax({
        type: "GET",
        url: thisUrl,
        dataType: 'jsonp',
        success: function (data) {
            console.log(data)
            alert('data is:' + data.GetToken[0].NewToken);
        }
    });
});

【讨论】:

  • 嗨,它仍然返回未定义。
  • @user2627054 添加console.log(data) 并查看data 中的内容
  • 你不能只使用@ArunPJohny 给你的代码。他正在硬编码 3 的 accessKey。他的代码有效,但返回了无效的访问代码错误
  • @jasonscript 对我能做什么有什么建议吗?
  • 你可以使用他的代码,但是你必须确保你传入了正确的 accessKey 值。您也在代码中设置它,但您必须在某处有一个全局变量。我只是想让你知道你不能直接复制粘贴他的代码并期望它能够工作
【解决方案2】:

参考这篇文章: http://www.isgoodstuff.com/2012/07/22/cross-domain-xml-using-jquery/

您只需要示例源代码中的“jquery.xdomainajax.js”即可使其工作。

$.ajax({
          url: 'https://asdf/asdf',
          dataType: "xml",
          type: 'GET',
          success: function(res) {
          var myXML = res.responseText;
          alert(myXML);
        }
      });

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-01-09
    • 2022-06-11
    相关资源
    最近更新 更多