Вы находитесь на странице: 1из 4

МИНИСТЕРСТВО ОБРАЗОВАНИЯ И НАУКИ РОССИЙСКОЙ ФЕДЕРАЦИИ

Федеральное государственное бюджетное образовательное


учреждение высшего образования
«Тихоокеанский государственный университет»

Кафедра
«Автоматика и Системотехника»

Лабораторная работа №8
по курсу «Архитектура информационных систем»
Тема: Организация AJAX-запроса на
получение текстового html-документа

Выполнил: студент группы


ИС(аб)-71 Белим Л.В.

Проверил:
Конопелько Г.К.
г. Хабаровск
2020 г.
Лабораторная работа №8
Организация AJAX-запроса на получение текстового html-
документа
Цель работы: ознакомление с основными компонентами Ajax, организация
запроса и обработка ответа на HTML странице.
Задание:
1. Сделать ссылку на получение текстового html-документа в одной из
частей html-страницы. Имена html-файлов и файлов Perl-скриптов должны
содержать русские буквы.
2. Разработать сценарии для организации асинхронного AJAX-запроса.
3. Сценарии должны предусматривать вывод сообщений об ошибках
приема-передачи и о состоянии запроса.
4. HTML-файлы и Perl-скрипты должны формировать ответ браузеру в виде
текста, включающего русские буквы. Ответ должен отображаться в
центральной части HTML-страницы.
Внимание! Использовать библиотечные функции при выполнении работы
запрещается!

Ход работы:
файл index.html /home/var/www/html/is1-02/Labs/index.html
<script type="text/javascript" language="javascript"
src="script/ajax89.js"></script>
<br>
<a href="Лида8.html" onclick=”sendPost_8(); return false”>ссылка на 8 Лр</a>

Файл ajax98.js /home/var/www/html/is1-02/Labs/script/ script/ajax89.js


function createRequest()
{
if (typeof XMLHttpRequest != "undefined")
{
return new XMLHttpRequest();
}
else if (window.ActiveXObject)
{
var aVersions = [
"MSXML2.XMLHttp.5.0",
"MSXML2.XMLHttp.4.0",
"MSXML2.XMLHttp.3.0",
"MSXML2.XMLHttp",
"Microsoft.XMLHttp"];
for (var i =работа
Лабораторная 0; i <№8
aVersions.length; i++) Лист
ТОГУ, ИС(аб)-71, Белим Л.В.
по курсу АИС 4
{ try

{var oXmlHttp = new ActiveXObject(aVersions[i]);


return oXmlHttp;
} catch (Error) {}
throw new Error("Ошибка XMLHttp.");
}}}

function print_8(resp1)
{
document.getElementById('serverResponse_8').innerHTML = resp1;
}
function SendRequest(r_method, r_args, r_path, r_handler, r_picture, boundary)
{
var Request = createRequest(); //Создаем запрос

if (!Request) //Проверяем существование запроса


{ return; }

Request.onreadystatechange = function()
{
if (Request.readyState == 4)
{if (Request.status != 200)
{alert(Request.status + ': ' + Request.statusText);}
else
{r_handler(Request.responseText);}
}
return; }

if (r_method.toLowerCase() == "get" && r_args.length > 0)//Проверяем какой


запрос
{ r_path += "?" + r_args;
}
Request.open(r_method, r_path, true);

if (r_method.toLowerCase() == "post")
{ if (r_picture.toLowerCase() == "true")
{
Request.setRequestHeader("Content-Type","multipart/form-
data; boundary=" + boundary);
}
else
{Request.setRequestHeader("Content-Type","application/x-www-form-
urlencoded; charset=utf-8");
} работа №8
Лабораторная Лист
ТОГУ, ИС(аб)-71, Белим Л.В.
по курсу АИС 4
Request.send(r_args);

} else
{ Request.send(null); }
}

function sendPost_8()
{var r_args;
SendRequest("post", r_args, " Лида8.html", print_8, "false", "");
}
файл Лида8.html /home/var/www/html/is1-02/Labs/Лида8.html
<!doctype html>
<html>
<head>
<meta charset="utf-8">
<link rel="stylesheet" href="style/stylelida.css" type/css">
<script type="text/javascript" language="javascript" src="script/лр8.js"></script>
<title>Л/р №8</title>
</head>
<body>
Kактусы — растения Нового Света, их естественный ареал — Южная
Америка и Северная Америка, а также острова Вест-Индии. Вид Rhipsalis
baccifera
встречается, кроме Америки, также в Африке.
<br>
</body>
</html>

Вывод: Выполняя данную лабораторную работу, я ознакомилась с


основными компонентами Ajax, организация запроса и обработка ответа на HTML
странице.

Замечание: Реализовать функцию при нажатии на ссылку.


Реализация:
<a href="Лида8.html" onclick=”sendPost_8(); return false”>ссылка на 8 Лр</a>

Лист
Лабораторная работа №8
ТОГУ, ИС(аб)-71, Белим Л.В.
по курсу АИС 4