Лабораторна робота № 9
Задание 1
1. Подключите модуль 'aiohttp' (базовый класс aiohttp.server.ServerHttpProtocol, https://docs.aiohttp.org/en/stable/ , https://aiohttp.readthedocs.io/en/v0.18.2/server.html)
2. Создайте сервер для обработки порта 8080
3. С помощью объекта Response:
- верните статус успешного выполнения запроса
- в теле ответа верните строку "Привет от [ваше имя]!"
- сообщите клиенту, что все необходимые данные переданы (обозначьте конец ответа)
4. Запустите сервер
5. Выполните запрос к серверу через браузер и убедитесь в корректности ответа
6. Остановите сервер
Задание 2
1. Создайте в папке labs файл index.html со следующим содержимым:
<hr><strong>Конец сообщения.</strong>
2. Подключите модуль 'asyncio'
3. Асинхорнно зачитайте файл index.html и верните его клиенту после вывода строки "Привет от [ваше имя]!"
4. Запустите сервер
5. Выполните запрос к серверу через браузер и убедитесь в корректности ответа. Если вы всё сделали правильно, то должна остаться одна проблема: html-код из файла вывелся "как есть". Почему?
6. Изучите заголовки ответа сервера (вкладка Network Инструментов разработчика (F12))
Задание 3
1. Откройте документацию https://aiohttp.readthedocs.io/en/v0.18.2/server.html и посмотрите, как послать дополнительные заголовки ответа сервера
2. Измените код сервера, чтобы он отдавал заголовок, необходимый для "понимания" браузером, что он получает html-код
3. Перезапустите сервер
4. Выполните запрос к серверу через браузер и убедитесь в корректности ответа