Portar extensións de proxy entre Chrome e Firefox
Firefox e Chrome expoñen API de extensión con nomes similares pero modelos de configuración distintos. Porta a política de enrutamento, non só o espazo de nomes.
Renomear chrome a browser non é un port completo dunha extensión de proxy.
A configuración de servidor fixo de Chrome usa un obxecto de modo e regras. Firefox expón a súa propia interface de axustes globais de proxy e unha API proxy.onRequest por solicitude. Os nomes similares non fan intercambiables os seus obxectos de entrada.
Comeza pola política que queres expresar: un extremo fixo, unha configuración PAC ou unha ruta elixida por separado para cada solicitude. Despois usa a interface documentada para cada navegador.
O oínte por solicitude de Firefox pode devolver información de proxy desde o código da extensión. Require o permiso de proxy e o acceso de host axeitado para as solicitudes interceptadas. É un deseño distinto de copiar un obxecto de axustes de servidor fixo de Chrome e esperar que o navegador recoñeza cada campo.
Comproba tamén a versión de Firefox admitida e os requisitos do manifest. Os exemplos antigos que usan proxy.register() describen unha API anterior e non deberían ser a base dunha extensión actual.
Mantén os datos de política compartidos separados da adaptación específica de cada navegador. As probas e o diagnóstico deberían mostrar a ruta elixida para un destino en cada navegador, incluído un resultado directo deliberado. Un manifest válido e unha chamada á API que non lanza erros son só o comezo.