我想要实现的是使用 Google 的图形 API 绘制表格,当页面加载时,它会向我的 REST 服务器查询 JSON 数据。这是我的 Javascript 函数。
JavaScript 控制台不显示任何错误。
$(document).ready(function() {
$.ajax({
url: 'http://localhost:8004/project5',
dataType: "json",
async:false,
error: function(error){
console.debug(error);
},
success: function(data)
{
alert("YESSSSS");
var data = data.results;
for(var i=0; i<data.length; i++) {
mytable[arraysize] = new terms(data[i].term1, data[i].term2, (data[i].contains)/((data[i].contains)+ (data[i].notcontains)));
arraysize +=1;
}
drawTable();
}
});
});
这是我在浏览器中使用“ http://localhost:8004/project5 ”查询服务器时返回的 JSON
{
"results":[
{
"term1":"test",
"term2":"hard",
"contains":"32",
"notcontains":"55"
},
{
"term1":"test",
"term2":"easy",
"contains":"32",
"notcontains":"55"
},
{
"term1":"pizza",
"term2":"hut",
"contains":"32",
"notcontains":"55"
}
]
}
内容的 html 内容未设置为“YESSSS”,我用它来测试该功能是否成功。当页面加载时,其余服务器识别它被查询并成功返回 JSON,所以我认为问题在于从返回的 JSON 中获取数据。这就是我卡住的地方。
编辑:似乎我的成功函数没有被调用。这是在 java REST 服务器 JAX-RS 中调用的函数。生成 JSON。
@GET
@Produces(MediaType.APPLICATION_JSON)
public String getStudentByid(@QueryParam("id") String id) {
System.out.println("Queried");
if (id == null)
return Terms.stringTerms(container);
return Terms.getTermsByFirst(container, id);
}
我现在收到
XMLHttpRequest cannot load http://localhost:8004/project5/terms.json. Origin null is not allowed by Access-Control-Allow-Origin.
错误