Proxy Authentication Required (407) - Consumo de WebService via DELPHI 7
18/04/2013
0
HTTPRIO1.HTTPWebNode.Proxy := SERVIDORPROXY:PORTA;
HTTPRIO1.HTTPWebNode.UserName := USUARIO;
HTTPRIO1.HTTPWebNode.Password := SENHA;
Mesmo assim dava ACCESS VIOLATION. Depois descobri que tinha que autenticar o PROXY. Pelo que entendi utilizando o seguinte código:
procedure TD1.HTTPRIO1HTTPWebNode1BeforePost(const HTTPReqResp: THTTPReqResp; Data: Pointer);
begin
if not InternetSetOption(Data, INTERNET_OPTION_USERNAME, PChar(HTTPRIO1.HTTPWebNode.UserName), Length(HTTPRIO1.HTTPWebNode.UserName)) then
ShowMessage(SysErrorMessage(GetLastError));
if not InternetSetOption(Data, INTERNET_OPTION_PASSWORD, PChar(HTTPRIO1.HTTPWebNode.Password), Length (HTTPRIO1.HTTPWebNode.Password)) then
ShowMessage(SysErrorMessage(GetLastError));
end;
Só que ai começou a dar o erro de PROXY AUTHENTICATION REQUIRED (407). Já pesquisei e não consegui achar uma solução.
Alguém tem alguma dica?
Carlo Ferreira
Posts
20/08/2013
Fernando Papile
Unit SOAPHTTPTrans.pas
function THTTPReqResp.SendGet: Integer;
...
Flags := INTERNET_FLAG_DONT_CACHE;
...
Request := HttpOpenRequest(FInetConnect, 'GET', PChar(FURLSite), nil, { Do not localize }
nil, Pointer(AcceptTypes), Flags, Integer(Self));
...
end;
trocar por:
function THTTPReqResp.SendGet: Integer;
...
Flags := INTERNET_FLAG_DONT_CACHE or INTERNET_FLAG_KEEP_CONNECTION;
...
Request := HttpOpenRequest(FInetConnect, 'GET', PChar(FURLSite), nil, { Do not localize }
nil, Pointer(AcceptTypes), Flags, Integer(Self));
...
end;
compilar, pegar o arquivo dcu gerado e colocar na pasta lib do delphi 7
ai ele pegará o proxy do IE
abs
22/08/2013
Carlo Ferreira
Mais uma vez, muito obrigado.
22/08/2013
Deivison Melo
Podemos dar como encerrado?
Abração e bons códigos!!
Clique aqui para fazer login e interagir na Comunidade :)