我用AJAX调用调用REST API,这样:
function getPay(CF) {
$.ajax({
type: "GET",
data: {codFisc: CF},
timeout: 6000,
url: "http://192.168.40.129:8180/api/rest/done",
success: function(data){
var count = Object.keys(data).length;
console.log(data);
for (i = 0; i < count; i++) {
resultList.push(data);
}
...
...
在其他电话中这很好用。现在我没有得到这个AJAX调用的结果。如果我删除数据参数并使用此URL调用其余API:http://192.168.40.129:8180/api/rest/done?codFisc=XXX
然后我得到结果,一切正常。我在哪里做错了?
答案 0 :(得分:0)
试试这个
$.ajax({
type: "GET",
data: JSON.stringify({codFisc: CF}),
timeout: 6000,
url: "http://192.168.40.129:8180/api/rest/done",
processData: false,
contentType: false,
success: function(data){
var count = Object.keys(data).length;
console.log(data);
for (i = 0; i < count; i++) {
resultList.push(data);
}
答案 1 :(得分:0)
这里Cf必须是数字。正如它在查询字符串
中工作你可以试试这个。
function getPay(CF) {
$.ajax({
type: "GET",
data: {},
timeout: 6000,
url: "http://192.168.40.129:8180/api/rest/done?codFisc="+CF,
success: function(data){
var count = Object.keys(data).length;
console.log(data);
for (i = 0; i < count; i++) {
resultList.push(data);
}
...
确保从服务器返回数据类型。如果它是一个json obj然后添加dataType:'json'
你也可以试试这个:
function getPay(CF) {
if (CF != null) {
$.ajax({
url: 'http://192.168.40.129:8180/api/rest/done',
data: { codFisc: CF },
type: "GET",
async: false,
success: function (result) {
// show message
// do stuff here
},
error: function (XMLHttpRequest, textStatus, errorThrown) {
// show message
ShowMessage(XMLHttpRequest.responseText, 'Error');
}
});
}
else {
ShowMessage("Please select record to edit", 'Error');
//record id is null
}
}