Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

295
Vistas
No se puede conectar el origen de eventos de JS al servidor backend de Python (Django)

Estoy trabajando con Django Framework + Javascript y quiero crear un evento enviado por el servidor que enviará mensajes al front-end.

Aquí está mi parte Js-cliente:

 btn.addEventListener('click', function(event){ console.log('started...'); var url = new URL('http://127.0.0.1:8000/get/stream/data/'); var source = new EventSource(url); source.onopen = function(){ console.log('Source has been connected....'); }; console.log(source); source.onmessage = function(event){ data = JSON.parse(event.data); console.log('on message event', event, data); console.log(event); }; source.onerror = function(err) { source.close(); console.error("EventSource failed:", err); }; source.onclose = function(){ evtSource.close(); console.log('event source has been closed'); } });

Parte Python-Django:

 def prepare_stream_data(): import json from django.core.serializers.json import DjangoJSONEncoder while True: for i in range(30): yield json.dumps('%s' % i, cls=DjangoJSONEncoder) print(i) time.sleep(5) def send_stream_data(request): stream_data = prepare_stream_data() response = django.http.StreamingHttpResponse(stream_data, content_type='text/event-stream') return response

urls.py

 path('get/stream/data/', main_course_api.send_stream_data, name='stream_data')

Django básicamente funciona y veo el resultado en la consola... cuando hago clic en el botón, pero me muestra en la consola JS que la fuente del evento no está conectada (readyState es igual a 0) y no recibe ningún mensaje): (

about 4 years ago · Juan Pablo Isaza
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda