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

227
Vistas
WebExtension: al usar webrequest para enviar mi contenido a una URL coincidente, ¿webRequest.StreamFilter.onstart es el camino a seguir?

Quiero escribir una extensión web que envíe contenido json falso al acceder a cualquier URL que coincida con un patrón.
Empecé con el documento de MSDN.
https://developer.mozilla.org/en-US/docs/Mozilla/Add-ons/WebExtensions/API/webRequest/StreamFilter/ondata

el código es bastante sencillo

 function listener(details) { let filter = browser.webRequest.filterResponseData(details.requestId); let decoder = new TextDecoder("utf-8"); let encoder = new TextEncoder(); filter.ondata = event => { let str = decoder.decode(event.data, {stream: true}); // Just change any instance of Example in the HTTP response // to WebExtension Example. str = str.replace(/Example/g, 'WebExtension Example'); filter.write(encoder.encode(str)); filter.disconnect(); } } browser.webRequest.onBeforeRequest.addListener( listener, {urls: ["https://example.com/*"], types: ["main_frame"]}, ["blocking"] );

Pero esto no es lo que.
No quiero (esperar entonces) alterar el contenido. Quiero impulsar mi contenido de inmediato.

Así que cambié el oyente por

 filter.onstart = event => { var url = event. ??? if (url.indexOf("any string I'd like to look for")) { filter.write(encoder.encode("some text to display")); filter.close(); } else // I'm not interested in you, just process as usual { filter.disconnect() } }

Mi objetivo es capturar cualquier URL, buscar un patrón en ella y mostrar mi contenido si coincide.
¿Está buscando onstart la forma correcta de hacerlo?

  • En caso afirmativo, encontré extraño que buscar en Google no devuelve más ejemplos y no puedo encontrar el documento para el evento que ocurre para el inicio.
    ¿Cómo se llama este evento? ¿Dónde puedo encontrar el documento (y los eventos que ocurrieron en los datos al cerrar...)?

  • Si no,
    cuál será la forma correcta para que una extensión web intercepte una solicitud de página para enviar (o no) su contenido.

¿Funcionará mi idea de sustitución de página si estoy usando Ajax/fetch para obtenerla?
¿Podré configurar el tipo MIME también? (Quiero enviar contenido json)

about 4 years ago · Santiago Gelvez
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