Estoy usando el software Charles Web Debugging Proxy para depurar solicitudes HTTP. Funciona muy bien con mis navegadores de escritorio, Chrome y Firefox, e incluso ve solicitudes HTTP que hacen otros programas.
Cuando ejecuto Charles y compruebo la configuración de red, creo que entiendo cómo funciona: solo configura un proxy para todas las solicitudes HTTP y HTTPS y luego las escucha en el puerto 8888:
Sin embargo, el artículo que no puedo entender es que no veo ninguna solicitud que se inician en el terminal, como por ejemplo wget
, curl
o el elinks
navegador.
Sé que puedo especificar el proxy con curl y wget usando 127.0.0.1:8888, pero no entiendo si la interfaz de red está configurada con un proxy en la configuración por qué necesitaría especificar manualmente el proxy para ellos .
Además, parece que tampoco puedo hacer que BlueCrab (copiadora de sitios web) aparezca en Charles, y no veo una configuración de proxy para ello, aunque creo que está usando un contenedor XWindow o algo así (en realidad no es nativo Aplicación Cacao / Carbono):
¿Cómo puedo hacer que todas las solicitudes HTTP en mi sistema se ejecuten a través de Charles?
Aclaración
Mi pregunta es acerca de las cuestiones básicas de sistemas de rizo y por eso wget no utilizar un proxy cuando la interfaz de red se ha configurado para utilizar uno más que preguntar sobre la sintaxis correcta para curl
, wget
, etc.
wget detrás del proxy (puede que tenga que crear el archivo rc) fuente
Agregue la siguiente línea:
rizo detrás de la fuente proxy
Agregue la siguiente línea:
enlaces detrás de la fuente proxy
Encuentra tu
elinks.conf
archivo con:Agregue la siguiente línea:
No estoy seguro sobre BlueCrab
fuente
La razón por la que no solo obtiene el proxy de todas las solicitudes HTTP es porque a nivel del sistema operativo , no existe una "solicitud HTTP"; solo hay conexiones TCP. Ponerse en contacto con un proxy HTTP significa cambiar ligeramente la solicitud HTTP, así como ponerse en contacto con el servidor proxy en lugar del host nombrado en la URL, por lo que debe hacerse en el código que implementa el envío de solicitudes HTTP.
curl y wget tienen su propio código HTTP, que usa sus propios archivos de configuración: no han sido programados para buscar configuraciones de proxy donde Mac OS X los mantiene, ni están usando las bibliotecas HTTP proporcionadas con Mac OS X que usan esos proxy ajustes
fuente
Si no desea tocar sus archivos de configuración, usando curl puede hacer:
curl http://example.com --proxy 127.0.0.1:8888
fuente