You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Задание: Сделать визуализацию игры на веб странице.
При запуске игры с ключом -w или --web программа должна выводить три пирамидки на html странице по ссылке localhost:5000.
Для выполнения необходимо:
1. Создать серверный компонент.
Необходимо создать файл server.py с функцией запуска сервера, которая будет запускаться при запуске игры.
Сервер должен:
принимать GET запрос на отрисовку страницы с визуализацией по ссылке localhost:5000. Отвечать сервер должен html страницей. Сервер должен так же обеспечить подключение в HTML странице JS скрипта main.js.
принимать GET запрос на получение состояния игрового поля по ссылке localhost:5000/get_game_state. Отвечать сервер должен данными в JSON формате, например:
{ "board": [ [3,2,1], [], [] ] }
Что означает, что на поле три стержня, один из них имеет диски 3, 2, 1.
Больше про JSON здесь, а про JSON в Python здесь.
Реализовать сервер проще всего используя Flask.
Нужно реализовать два route (/, /get_game_state): один возвращает HTML, другой возвращает JSON с данными из игры в JSON.
2. Создать клиентский компонент.
Клиентский компонент это HTML файл, CSS файл и Javascript документ main.js.
HTML содержит только следующее
Скрипт должен запускаться при открытии страницы и делать следующее:
Каждую секунду направлять AJAX запрос по ссылке localhost:5000/get_updates. При получении ответа стирать содержимое контейнера <div class="board"> и заполнять его используя полученные от сервера данные, например для приведенного выше JSON так:
Задание: Сделать визуализацию игры на веб странице.
При запуске игры с ключом -w или --web программа должна выводить три пирамидки на html странице по ссылке
localhost:5000
.Для выполнения необходимо:
1. Создать серверный компонент.
Необходимо создать файл
server.py
с функцией запуска сервера, которая будет запускаться при запуске игры.Сервер должен:
localhost:5000
. Отвечать сервер должен html страницей. Сервер должен так же обеспечить подключение в HTML странице JS скриптаmain.js
.localhost:5000/get_game_state
. Отвечать сервер должен данными в JSON формате, например:Что означает, что на поле три стержня, один из них имеет диски 3, 2, 1.
Больше про JSON здесь, а про JSON в Python здесь.
Реализовать сервер проще всего используя Flask.
Нужно реализовать два
route
(/
,/get_game_state
): один возвращает HTML, другой возвращает JSON с данными из игры в JSON.2. Создать клиентский компонент.
Клиентский компонент это HTML файл, CSS файл и Javascript документ
main.js
.HTML содержит только следующее
Скрипт должен запускаться при открытии страницы и делать следующее:
localhost:5000/get_updates
. При получении ответа стирать содержимое контейнера<div class="board">
и заполнять его используя полученные от сервера данные, например для приведенного выше JSON так:Таким образом с помощью HTML реализуется визуализация дисков.
Чтобы это было похоже на пирамидки и диски нужно добавить CSS. Сделать так, чтобы:
pyramid
занимали500px
в высоту и30%
экрана в ширину и имели зазор между друг другом размером5%
.disk
должны иметь залитый синим цветом фон, иметь ширину100%
и высоту150px
, а так же зазор по вертикали50px
.Вам понадобятся css атрибуты
width
,height
,margin
иbackground-color
. Подробнее здесьСхема работы
--web
.localhost:5000
.main.js
, запрашивает положение пирамидок.The text was updated successfully, but these errors were encountered: