python - libreria - Cómo crear una comunicación entre el navegador y la aplicación
libreria webbrowser python (1)
Tenga en cuenta que aunque el protocolo WebSockets se basa en sockets TCP, el protocolo WebSockets no es sockets TCP sin procesar. Una conexión WebSockets tiene un saludo amistoso HTTP (con alguna funcionalidad CORS incorporada). WebSockets también se basan en mensajes (en lugar de transmitir como TCP) por lo que cada mensaje tiene un par de bytes de encabezados de encuadre.
Puede consultar websockify (descargo de responsabilidad: hice websockify). Websockify es un servidor python que crea puentes / proxies entre WebSockets y conectores TCP simples. No creo que sea particularmente difícil adaptarlo para manejar sockets UDP en el back-end.
WebSockify (diseñado para usarse junto con la biblioteca de aplicaciones incluidas include / websock.js) admite datos binarios incluso sobre las versiones anteriores de Hixie del protocolo. Esto le permite trabajar con dispositivos iOS (iPhone, iPad) que aún solo son compatibles con la versión anterior del protocolo.
Tengo un gran problema y estoy teniendo dificultades para resolverlo. Tengo un controlador de juego hecho a medida, que saca algunos datos de sus sensores a través de comunicación en serie y está conectado a la PC a través del puerto serie. Hago la llamada de la posición actual del controlador en un script de Matlab. Estoy construyendo una aplicación web que mostrará los datos (posición) del dispositivo en un navegador web, pero parece que no funciona, cómo conectar mi dispositivo al navegador. El script de Matlab envía todos los datos de posición a un puerto UDP con una frecuencia de muestreo de 100 Hz (100 muestras por segundo). Necesito hacer una conexión persistente entre un navegador web y mi script de matlab, así podré mostrar los datos. Estoy pensando en usar la API de sockets web. pero no "habla" UDP. Entonces, mi idea era leer los datos desde UDP con un servidor Python personalizado y luego crear un websocket en ese servidor Python y enviar los datos recibidos a través del puerto UDP al navegador web. Ah, y sería bueno si pudiera comunicarme en ambas direcciones. esto funcionara? ¿Alguna idea de cómo hacerlo? ¿Cómo se hace esto habitualmente ?, me refiero a cómo se puede conectar, digamos, un sensor de temperatura al navegador web para mostrar datos en tiempo real.
Cualquier respuesta será felizmente apreciada.
Gracias, Leon