2016-11-19 10 views
0

Я немного рассол. Я работаю над маленьким статическим генератором сайтов, и я догадываюсь, что было бы полезно иметь сервер разработки, доступный через мой инструмент. Поэтому я хотел бы:Как реализовать веб-сервер с поддержкой LiveReloaded Development в Python

  • запустить локальный сервер
  • Update файлы, когда есть обновление
  • Автоматически обновить браузер после того, как обновленный файл был обработан

Но я не совсем уверен, что было бы лучшим способом сделать это. Я рассматриваю использование стандартного веб-сервера Python или Twisted для сервера и Watchdog для файлов обновлений, но я пока не совсем уверен. Кроме того, я понятия не имею, как перейти к обновлению страницы. Я видел драйвер Selenium, но я думаю, что использование этого будет немного излишним для того, что я хочу, тем более, что для этого потребуются больше (не-Python) зависимостей. Я также читал о веб-сайтах, но я не совсем уверен, как я могу поместить их в эту проблему.

Итак, как вы думаете, что было бы хорошим способом сделать что-то подобное? Или, возможно, такой инструмент уже существует, что я могу просто добавить как зависимость от моего проекта ... В любом случае, я хотел бы услышать ваши идеи.

+0

Для обновление браузера я, возможно, будет использовать тот же метод, что и Microsoft для vs ... вставлять js-файл на вашу веб-страницу, которая открывается s websocket для сервера и прислушивается к перезагрузке команды ... –

+0

Не могли бы вы нарисовать мне ссылку на что-то по этой теме? – tedm1106

ответ

1

Для обновления браузера я бы рекомендовал вам ознакомиться с веб-сайтами, а не вставить js-файл в нижней части страницы html. WebSocket Реализация может быть:

Simple Websocket Serverfor Python

Microsoft сделал это с BrowserLink в VS:

Browser Link

, ИС Сценарий впрыснуть может быть что-то простое, как:

<script type="text/javascript"> 
var socket = new Websocket(url to server); 
socket.onmessage = function(e){ 
if(e.data == "reload"){ 
location.reload(); 
} 
}; 
</script> 

 Смежные вопросы

  • Нет связанных вопросов^_^