我在服务器上有一个端点:
app.get('/A/:A_Id/B/:B_Id/C?', callbackFunction);
输入" http://xx.xx.xx.xx:3000/A/1/B/1/C?startTimeUtc=03:00:00&endTimeUtc=05:00:00
"服务器响应callbackFunction中的数据,我可以看到地址http://xx.xx.xx.xx:3000/A/1/B/1/C?startTimeUtc=03:00:00&endTimeUtc=05:00:00
中的数据(startTimeUtc和endTimeUtc可以根据用户输入而改变),
但我无法使用ajax get函数获取数据:
$.ajax({
type: 'GET',
url: '/A/:A_ID/B/:B_ID/C?', success: function(result){
// result is NaN
}
在这种情况下,正确的终点应该是什么?
答案 0 :(得分:0)
首先,您实际上并未向ajax调用提供任何数据。
API_URL = "http://xx.xx.xx.xx:3000/A/" + A_ID + "/B/" + B_ID + "/C"
$.ajax({
type:'GET', //mostly here for readability; is default for ajax
url:API_URL,
data:{
startTimeUtc:user_input_for_start_time
endTimeUtc:user_input_for_end_time
}
}).done(function(result){
console.log(result);
}).always(function(result, status){
console.log(result);
console.log(status);
});
不确定总是会对你有所帮助,但认为这可能值得一试。您还需要包含完整的URL。作为维基百科api的例子,它是:"https://en.wikipedia.org/w/api.php"
。即你只需要去?,然后呢?对于GET调用是可选的(无论是否提供类型,请参阅jQuery ajax documentation)。
另一种方法是粘贴整个网址:
url:API_URL + "?startTimeUtc=03:00:00&endTimeUtc=05:00:00"
。我个人更喜欢使用数据,但这完全取决于你。
答案 1 :(得分:0)
您可以执行以下操作:
var url = "http://xx.xx.xx.xx:3000/A/" + A_ID + "/B/" + B_ID + "/C?startTimeUtc=" + startTime + "&endTimeUtc=" + endTime;
$.get( url, function( data ) {
console.log(data);
});
A_ID
,B_ID
,startTime
和endTime
是包含相应值的变量。