這是我的代碼:http://codepen.io/anon/pen/MbLEEE
HTTP請求不起作用(JavaScript)的
xmlhttp.open("GET", "anyURL", true);
xmlhttp.send();
我不知道如何來完成我的HTTP請求。
當我輸入一個隨機URL我總是得到相同的ResponseCode。
我在做什麼錯了?
這是我的代碼:http://codepen.io/anon/pen/MbLEEE
HTTP請求不起作用(JavaScript)的
xmlhttp.open("GET", "anyURL", true);
xmlhttp.send();
我不知道如何來完成我的HTTP請求。
當我輸入一個隨機URL我總是得到相同的ResponseCode。
我在做什麼錯了?
您需要使用服務器執行此操作,如果您想在沒有服務器的情況下執行此操作,那麼您需要啓用ActiveX控件的Internet Explorer。您需要複製此腳本並將其粘貼到標記之間並將其另存爲html文件。使用Internet Explorer打開文件。
window.onload = addElement;
function addElement() {
\t // create a new div element
\t // and give it popup content
\t var newDiv = document.createElement("div");
\t var texts;
\t
\t xmlhttp = new XMLHttpRequest();
\t
\t xmlhttp.onreadystatechange =
\t function()
\t {
\t \t
\t \t if (xmlhttp.readyState == 4 && xmlhttp.status === 200)
\t \t {
\t \t \t texts = xmlhttp.responseText;
\t \t \t
\t \t }
\t \t else
\t \t {
\t \t \t texts = 'Waiting for response...';
\t \t }
\t \t newDiv.innerHTML += '<div id="popup" style=" position: fixed;top: 15%;width: 800px;height: 200px;margin: auto;z-index: 99999;display: block;left:25%;background-color: #fff; border: 1px solid #ddd; border-radius: 5px; box-shadow: 0 1px 6px 4px #000; overflow: hidden; padding: 10px;"><div class="popup_body" style=" height: 160px;">' + texts + '</div><button style="padding: 10px;" class="close_button"onClick="closePopup()">Sluiten</button><button style="padding: 10px;" class="close_button"onClick="tostoring()">Meer Informatie</button></div>';
\t }
\t xmlhttp.open("GET", "https://soundcloud.com/jbadminton/lol", true);
\t xmlhttp.send();
\t
\t
\t // Add The Background cover
\t var BG = document.createElement("div");
\t //BG.style.background-color = 'black';
\t BG.style.width = '100%';
\t BG.style.height = '100%';
\t BG.style.background = 'black';
\t BG.style.position = 'fixed';
\t BG.style.top = '0';
\t BG.style.left = '0';
\t BG.style.opacity = '0.7';
\t BG.style.zIndex = '99900';
\t BG.style.display = 'none';
\t BG.setAttribute("id", "bgcover");
\t // add the newly created elements and its content into the DOM
\t document.body.appendChild(BG);
\t document.body.insertBefore(newDiv, BG);
\t // open popup onload
\t
\t
\t
\t
\t
\t
\t
\t openPopup();
}
function openPopup() {
\t var el = document.getElementById('popup');
\t var BG = document.getElementById('bgcover');
\t el.style.display = 'block';
\t BG.style.display = 'block';
}
function tostoring() {
\t window.location.href = 'http://localhost/Sms%20management%20systeem/testing/storing.php';
}
function closePopup() {
\t var el = document.getElementById('popup');
\t var BG = document.getElementById('bgcover');
\t el.style.display = 'none';
\t BG.style.display = 'none';
}
的對象,你應該用的是XMLHttpRequest
。例如:
function getURL(url, callback) {
// it makes one XMLHttpRequest object,
//which will be used for all the AJAX queries.
var xhr = new XMLHttpRequest();
xhr.open("GET", url, true);
xhr.addEventListener('load', function(e) {
if ((e.target.readyState === 4) && (e.target.status === 200) || (e.target.status < 299)) {
callback(e.target.responseText);
}
});
xhr.send(null); // send requests
}
另外,儘量在你的代碼debugger;
工作,看看做什麼一切都在你的代碼,以及與console.log()
,如果它是你更容易。在DevTools控制檯中打開您的網絡選項卡,並會看到您的網絡查詢。
除非該域已明確配置爲允許訪問您不能從不同的域讀取URL。查看瀏覽器錯誤控制檯。 –
請求的資源上沒有「Access-Control-Allow-Origin」標頭。因此不允許Origin'http:// localhost'訪問。響應有HTTP狀態代碼404 –
這意味着,您(或您的後端傢伙)應該以這種方式將服務器配置爲允許進行從本地主機的IP請求。 – Julsy