Я борюсь с загрузкой текста из простого текстового файла с использованием XMLHTTPRequest API.
Вот список технологий, которые я использую в своем развитии:
Обзор. Я запускаю простую страницу index.htm, которая вызывает скрипт через тип ввода "Button". API присваивает ссылку в памяти из JavaScript, и функция onReadyStateChange выполняется при изменении состояния API.
Состояние готовности 1 (загрузка) было возвращено и статус не был возвращен. Больше не было экземпляров этой функции, указывающих на то, что состояние после этого не изменилось.
Подсказка: у меня возникает соблазн подумать, что это связано с расположением ресурсов и приложением, работающим в режиме localhost, на зарегистрированном сайте, но я просто не знаю.
Код HTML:
<body>
<input type="button" id="getSome" title="Andrew Graham" value="Bob" onclick="Get_ListTextFile();"/>
<script src="Scripts/index.js" type="text/javascript"></script>
</body>
Код JavaScript:
var request= new XMLHttpRequest();
function Get_ListTextFile() {
var uniformResourceLocator = 'Bob.txt';
if (window.XMLHttpRequest = true) {
request.open('GET', uniformResourceLocator,true);
request.onReadyStateChange = ServerResponse();
request.send();
}
}
function ServerResponse() {
var response;
if (request != 'undifined') {
if(request.readyState === 4 && request.status === 200){
response = JSON.parse(request.responseText);
}
}
}
Запрос на веб-страницу: http://* ls: 1920/index.htm
* ls = localhost
Содержание файла:
Bob 1 Bob 2 Bob 3
Вы в состоянии готовности состояния должны быть в нижнем регистре:
request.onreadystatechange = ServerResponse();
Вот обновленная версия, которая немного более многократно используется:
var request = new XMLHttpRequest();
function load(url, callback) {
if (window.XMLHttpRequest = true) {
request.open('GET', url, true);
request.onreadystatechange = function () {
if (request.readyState === 4 && request.status === 200) {
callback(request.responseText);
}
}
request.send();
}
}
load('/', function(data) {
console.log(data);
});