O AutoHotkey 2 pode usar o objeto COM WinHttpRequest do Windows para uma requisição com um proxy explícito:

request := ComObject("WinHttp.WinHttpRequest.5.1")
request.SetTimeouts(5000, 5000, 10000, 20000)
request.SetProxy(2, "proxy.example.net:8080", "localhost")
request.Open("GET", "https://example.net/status", false)
request.Send()
MsgBox request.Status " " request.StatusText

2 seleciona a configuração de proxy fornecida. Para a verificação HTTPS pública mostrada, a lista de proxies HTTP fornece valores candidatos de host e porta do intermediário quando rotas públicas são permitidas e nenhuma credencial de proxy está configurada. O terceiro argumento opcional é a lista de exceções; aqui, o localhost vai direto.

O false final em Open seleciona uma requisição síncrona. Este pequeno script espera a conclusão antes de ler o status. Uma automação de desktop de longa duração deve contabilizar essa espera no seu fluxo de interação.

Se o proxy exigir credenciais, defina-as depois de Open e antes de Send:

request.SetCredentials(proxyUser, proxyPassword, 1)

A aplicação fornece essas duas variáveis. O sinalizador final, 1, seleciona as credenciais do proxy. O sinalizador 0 seleciona as credenciais do servidor de destino.

Após uma resposta de texto bem-sucedida, request.ResponseText contém o texto retornado. Para um download binário, use ResponseBody e um caminho de escrita binária adequado em vez de enviar esses bytes por uma conversão de texto.

Artigos relacionados