我有一个REST API,可提取需要从Web应用程序中的自动填充搜索框访问的数据。这似乎在本地完全可以正常工作,但是当我将其推送到生产环境时,自动完成功能不起作用。
经过一些测试,我发现AJAX请求的success
方法在服务器上运行时根本不触发。这对我来说没有意义,因为它可以在我的计算机上本地运行。
API的其他部分可以在网上完全正常运行,只是自动完成功能无法按预期工作。
我知道请求正在正确触发,因为当我在将数据返回给AJAX之前转储数据时,一切都存在。但是,尝试使用success
方法执行任何操作只会导致任何结果。
$("#origin").autocomplete({
source: function(request,response) {
$.ajax({
method: 'post',url: "/journey_query/get_origin_stations",dataType: "json",data: {
'origin': origin_box
},success: function(data) {
console.log(request);
console.log(response);
console.log(data['places'][0]['place']);
$('#origin-stations').removeclass("is-hidden");
jQuery.each(data['places'],function(i,val) {
console.log(val['place']['name']);
$(".origin-stations").append("<a class='origin-place' href='#'><li>" + val['place']['name'] + "</li></a>");
});
$('#origin-field').removeclass("is-loading");
},fail: function() {
console.log(arguments);
alert("failure")
},});
},});