5

我可以访问一个 JSP 文件并采用 JSON 格式的 API。我正在尝试将这些数据从 JSP 页面获取到 PHP 脚本并处理它们,然后存储在我的 MySQL 服务器中。

JSON 字符串在我在线检查了几个 JSON Formatter 和验证器的 JSP 页面中有效。

这是我用来从页面获取 JSON 数据的代码,但是每次我的 ajax 调用失败时。

$('#button').click(function(e){
var url = 'http://xxxxx:8080/StudentAPI/index.jsp';
$.ajax({
    url : url,
    dataType : 'json',
    success : function(response) {
        alert('Success');
    },
    error : function(request, textStatus, errorThrown) {
        alert(request+textStatus+errorThrown);
    }
});
e.preventDefault();
})

请帮助我,任何以更好的方式做的建议总是受欢迎的。

4

1 回答 1

3

您正在进行跨域 ajax 调用。因此,如果您像普通的 ajax 调用一样尝试它,它将无法正常工作。

一种方法是

  1. 在您发出 ajax 请求的服务器端将“Access-Control-Allow-Origin”设置为“*”。

  2. 然后在设置变量中使用“crossDomain”属性“true”进行jquery ajax调用。

另一种方法是使用jsonp

根据您使用的服务器,您可以在本文中找到如何添加 cors 。

更新

她是一篇 w3c 文章,描述了如何在 java servlet 中配置 cors。请参阅In Java servlets部分。

要点基本上是给出ajax响应的服务器应该 在响应头中"Access-Control-Allow-Origin"设置字段。"*"

于 2013-05-02T05:41:48.117 回答