[英]AJAX request not working on remote host
我有一个AJAX请求,该请求从表单中提取数据并将其发布到API。 奇怪的是,它在localhost上可以正常运行,但是当我上传到远程服务器时却无提示地失败。 我的意思是无声:响应代码为空,日志中没有任何内容。 我已经检查了Firefox和Chrome。 jQuery已加载,功能正常启动。 代码如下:
function send() {
console.log("preparing");
var beacon = {
beaconID: $("#beaconID").val(),
name:$("#beaconName").val(),
campaignID:$("#campaignID").val(),
clientID:$("#clientID").val()
}
console.log("payload:");
console.log(beacon);
$.ajax({
type: 'POST',
url: '../beaconAPI/index.php/createBeacon',
data: JSON.stringify(beacon),
contentType: "application/json; charset=utf-8",
traditional: true,
success: function (response) {
console.log("done:");
console.log(response);
},
error: function(jqXHR, textStatus, errorThrown) {
console.log(JSON.stringify(jqXHR));
console.log("AJAX error: " + textStatus + ' : ' + errorThrown);
}
});
}
从您发表的评论
10:33:21.046 "{"readyState":0,"responseText":"","status":0,
"statusText":"error"}" addBeacon.html:34 10:33:21.046 "AJAX error: error : "
状态码为零表示以下两种情况之一:
既然您说这是在生产中,听起来好像是#2的情况。
因此,您需要取消导致页面刷新的操作。 由于您没有显示如何调用发送,因此这里有一些取消操作的基本方法。
onclick="send(); return false"
onsubmit="send(); return false"
$("#foo").on("click", function(e) {
send();
e.preventDefault();
});
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.