WedX - журнал о программировании и компьютерных науках

Не удалось получить запрос на странице jsp

Я не могу получить запрос на странице jsp, которую я отправляю со страницы html.

Я проверил в Chrome Inspect element, что запрос был успешно отправлен, и я отметил URL-адрес запроса, и я обнаружил, что URL-адрес доступен (и верен). Я могу сказать это, потому что я вставил этот URL-адрес в браузер, и результирующая страница, которая открылась с URL-адреса запроса, была моей страницей jsp. Поэтому я не мог понять, почему и где я делаю ошибку, поэтому этот запрос не отправляется в jsp.

Некоторый соответствующий фрагмент кода:

HTML-контент

var url = "test.jsp";
xmlhttp.open("GET",url,true);
xmlhttp.send();

Проверьте содержимое вкладки «Сеть» элемента:

Request URL: /MusicShopping/test.jsp
( https://localhost:14443 before /MusicShopping too)
Request Method:GET
Status Code:200 OK

Зеленый шар до 200 появился

jsp содержит только строку обычного текста. (Если я вручную скопирую URL-адрес запроса на вставку в браузере, отобразится моя страница jsp).

Подскажите пожалуйста где может быть проблема

25.12.2013

  • Похоже, вы попробовали все обычные тесты, чтобы изолировать проблему. Как узнать, что страница не открывается? 25.12.2013
  • @JasonSperske, потому что я не мог видеть вывод. У меня есть hello test только на странице jsp. Итак, по моему мнению, если тот же URL-адрес, что и в URL-адресе запроса, может указывать на jsp и печатать вывод, если это делается вручную, то почему он не показывает вывод в случае запуска запроса. Это тот момент, который привел меня к выводу, что страница не открывается 25.12.2013

Ответы:


1

Вроде бы запрос отправлен, а с ответом ничего не делается. Зарегистрировали ли вы обратный вызов для onreadystatechange XMLHttpRequest, чтобы при изменении состояния вашего запроса AJAX запускался метод обратного вызова, и вы могли проверить состояние страницы readyStatus 4 и 200 и проанализировать ответ.

Ознакомьтесь с этим.

xmlhttp.onreadystatechange=function()
{
  if (xmlhttp.readyState==4 && xmlhttp.status==200)
  {
document.getElementById("myDiv").innerHTML=xmlhttp.responseText;
  }
}
25.12.2013
  • Нет, я намеренно пропустил обратный вызов, потому что я думал, что файл jsp уже отправляет какой-то HTML-код для отображения, поэтому в обратном вызове не должно быть необходимости. я ошибаюсь 25.12.2013
  • Вам нужен обратный вызов, чтобы сделать что-либо с ответом на запрос Ajax. 25.12.2013
  • Джейсон прав. Проблема с вашим кодом в том, что JSP отправлял ответ, но вы его проигнорировали. Если вы используете AJAX, разбор и отображение ответа — наша обязанность. Вы уже упоминали, что на вкладке «Сеть» вы видели статус 200 для страницы JSP. См. ответ на этот конкретный запрос. 25.12.2013
  • Итак, теперь я хочу, чтобы на всей html-странице отображалось только Hello world, тогда как это можно сделать. Потому что на странице есть некоторые ранее существовавшие данные. 25.12.2013
  • Оберните существующий HTML-контент внутри div. Назначьте ему какой-нибудь пример идентификатора, скажем, d1. А теперь в обратном вызове сделайте следующее: document.getElementById(d1).innerHTML=xmlhttp.responseText; Перед запросом AJAX: ‹div id=d1›‹p› здесь что-то есть‹/p›‹/div› После анализа ответа AJAX и выполнения обратного вызова: ‹div id=d1›Hello world (вывод вашей JSP-страницы)‹/ раздел › 25.12.2013
  • Новые материалы

    Как проанализировать работу вашего классификатора?
    Не всегда просто знать, какие показатели использовать С развитием глубокого обучения все больше и больше людей учатся обучать свой первый классификатор. Но как только вы закончите..

    Работа с цепями Маркова, часть 4 (Машинное обучение)
    Нелинейные цепи Маркова с агрегатором и их приложения (arXiv) Автор : Бар Лайт Аннотация: Изучаются свойства подкласса случайных процессов, называемых дискретными нелинейными цепями Маркова..

    Crazy Laravel Livewire упростил мне создание электронной коммерции (панель администратора и API) [Часть 3]
    Как вы сегодня, ребята? В этой части мы создадим CRUD для данных о продукте. Думаю, в этой части я не буду слишком много делиться теорией, но чаще буду делиться своим кодом. Потому что..

    Использование машинного обучения и Python для классификации 1000 сезонов новичков MLB Hitter
    Чему может научиться машина, глядя на сезоны новичков 1000 игроков MLB? Это то, что исследует это приложение. В этом процессе мы будем использовать неконтролируемое обучение, чтобы..

    Учебные заметки: создание моего первого пакета Node.js
    Это мои обучающие заметки, когда я научился создавать свой самый первый пакет Node.js, распространяемый через npm. Оглавление Глоссарий I. Новый пакет 1.1 советы по инициализации..

    Забудьте о Matplotlib: улучшите визуализацию данных с помощью умопомрачительных функций Seaborn!
    Примечание. Эта запись в блоге предполагает базовое знакомство с Python и концепциями анализа данных. Привет, энтузиасты данных! Добро пожаловать в мой блог, где я расскажу о невероятных..

    ИИ в аэрокосмической отрасли
    Каждый полет – это шаг вперед к великой мечте. Чтобы это происходило в их собственном темпе, необходима команда астронавтов для погони за космосом и команда технического обслуживания..


    Для любых предложений по сайту: [email protected]