0
我有一個啓用了CORS的php web服務。Javascript CORS請求
我用http://www.test-cors.org/來確認Web服務的工作。根據這項服務XHR加載事件發射和狀態代碼爲200
我複製了測試一個Cors生成的代碼到在線JavaScript控制檯https://repl.it/languages/javascript
在這裏,我總是XHR狀態接收0。
基於Test Cors,我的web服務設置爲允許跨源。但是,當我使用在線JavaScript控制檯相同的Web服務返回狀態代碼0.
是否有原因,爲什麼此代碼不起作用?
var createCORSRequest = function(method, url) {
var xhr = new XMLHttpRequest();
if ("withCredentials" in xhr) {
//This part is called correctly
xhr.open(method, url, true);
}
return xhr;
};
var url = <URL>
var method = 'GET';
var xhr = createCORSRequest(method, url);
xhr.loadstart = function() {
//Not called
}
xhr.onload = function() {
//Not called
};
xhr.onerror = function() {
// Called
};
xhr.send();
alert(xhr.status)
因爲在提出實際請求之前您正在發出警報?也很好奇'在線JavaScript編譯器'是什麼。 –
加 - 我只在打開電話之前附加了回調。 xhr =新的XMLHttpRequest。 xhr.loadstart = function().... xhr.open(method)... xhr.send()。 – ripvlan
@JaredSmith我的意思是說控制檯不是編譯器。通過上面的代碼,調用xhr.onerror。即使我在調用後移動xhr.status的警報,警報仍然是0 – HShhanick