Me gustaría que mi extensión de Chrome se comunique con una aplicación nativa para el cuerpo de respuesta al realizar solicitudes a ciertas direcciones URL. Por ejemplo, cuando Chrome realiza una solicitud a https://www.example.com , la solicitud se intercepta (como en chrome.webRequest.onBeforeRequest ). Digamos que cuando se comunica con la aplicación nativa, la aplicación nativa resuelve que el html para el sitio debe ser <div>Example HTML</div> ; enviaría a la extensión de Chrome ese nuevo cuerpo de respuesta, que se usará como un alternativa a realizar la solicitud a example.com.
Inicialmente, parece obvio que la extensión podría simplemente redirigir a una nueva página alojada localmente cuyo html/css/js está siendo administrado por la aplicación nativa. Pero esto se rompe si el código de la página le dice a Chrome que cargue otra página (por ejemplo, <script src="foo.js"> ), a menos que la aplicación nativa quiera interpretar eso por sí misma.
Entonces, lo que estoy buscando es algo similar a chrome.webRequest.onBeforeRequest.addListener(function(details) {return}, filter, ["blocking"]) , pero devuelve los datos que Chrome debería usar en lugar de continuar con la solicitud. y obtener un cuerpo de respuesta.
Nota: la API de chrome.proxy no es correcta ya que se comunica con un servidor, no con una aplicación nativa.