Javascript 本地调用时,AJAX返回响应为0,状态为4
我正在尝试实现一个网站,该网站通过XMLHttpRequest调用本地php文件以获取json数据。正在从HTML表单调用登录函数。文件/var/www/picnit/api/member.api确实存在,并且具有足够的权限,并且已经使用Chrome的Postman应用程序进行了测试Javascript 本地调用时,AJAX返回响应为0,状态为4,javascript,ajax,xmlhttprequest,Javascript,Ajax,Xmlhttprequest,我正在尝试实现一个网站,该网站通过XMLHttpRequest调用本地php文件以获取json数据。正在从HTML表单调用登录函数。文件/var/www/picnit/api/member.api确实存在,并且具有足够的权限,并且已经使用Chrome的Postman应用程序进行了测试 //URL for member functions var memberurl='/picnit/api/member.php'; //Request to be sent to the middleware
//URL for member functions
var memberurl='/picnit/api/member.php';
//Request to be sent to the middleware
var request;
function login() {
//Get and validate user inputs
var username = $("input#Username").val();
var password = $("input#Password").val();
//Validation code omitted
//Getting here means that the inputs validated
//Request to be sent to the middleware
request = new XMLHttpRequest();
//Create function that handles response
request.onreadystatechange = function () {
//Make sure request is ready, we only care about when done
if(request.readyState === 4) {
//Good data, proceed to login
if(request.status === 200) {
alert('200');
}
//Invalid username/password combo
else if(request.status === 204) {
alert('204');
}
//Our request messed up
else if(request.status === 400) {
alert('400');
}
//Something else went wrong
else {
alert('Unknown error: ' + request.status);
}
}
};
//Open request
request.open('POST', memberurl, true);
//Send request
request.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
var parms = 'username='+username+'&password='+password;
request.send(parms);
return false;
}
这总是返回一个带有未知错误的警报:0,我无法找出原因。我不认为它可以跨域,因为它在同一台服务器上,一个AWS EC2实例。我不完全确定什么是相同的域策略
我一直在这里搜索其他帖子,还没有找到答案。感谢您在advanced中的帮助。您是从中打开此页面的吗http://localhost/ 或file:///var/www/?