Fala galera,
Segue mais um código pra contornar um problema comum no .net para quem precisa trabalhar com WebRequests acessando uma url através do protocolo HTTPS.
O erro que costuma ocorrer é uma mensagem de "Timeout exceeded" (Tempo limite excedido) e a solução é bastante simples. Basta adicionar as 2 linhas abaixo:
//Esta linha fará com que o certificado não seja validado (Útil em casos onde há problemas com o ceritificado)
System.Net.ServicePointManager.CheckCertificateRevocationList = false;
//Esta linha fará com que o tipo de protocolo de segurança a ser utilizado seja o SSL3 ao invés do TLS (que parece ser o protocolo padrão)
System.Net.ServicePointManager.SecurityProtocol = System.Net.SecurityProtocolType.Ssl3;
Um abraço e até a próxima!!
Mostrando postagens com marcador WebRequest. Mostrar todas as postagens
Mostrando postagens com marcador WebRequest. Mostrar todas as postagens
quinta-feira, 6 de fevereiro de 2014
quinta-feira, 15 de outubro de 2009
Fazendo um httpRequest em sua aplicação .Net
Fala, galera!!
Quem veio do ASP, como eu, está acostumado a utilizar o MSXML da Microsoft para realizar operações de httpRequest.
O .Net possui uma classe nativa para este tipo de Operação: HttpWebRequest.
Esta classe torna este tipo de operação ainda mais simples e, em caso de erro, fica mais fácil de debugar do que utilizando o antigo MSXML.
Além da vantagem de não precisar instalar nenhuma DLL externa no servidor onde a aplicação está hospedada. (Esta é o tipo de DLL que sempre dá problema em alguma implantação. Ninguém lembra dela. Só quando dá erro.)
Segue o código:
Dim myRequest As HttpWebRequest = WebRequest.Create("http://www.algumaURL.com.br")
Dim resp As HttpWebResponse = myRequest.GetResponse()
Dim sr As New StreamReader(resp.GetResponseStream())
retorno = sr.ReadToEnd()
sr.Close()
Response.Write(retorno)
O código acima irá obter o código gerado pela página apontada no seu WebRequest.
É necessário importar os seguintes Namespaces:
Imports System.Net
Imports System.IO
Um abraço e até a próxima!!
Quem veio do ASP, como eu, está acostumado a utilizar o MSXML da Microsoft para realizar operações de httpRequest.
O .Net possui uma classe nativa para este tipo de Operação: HttpWebRequest.
Esta classe torna este tipo de operação ainda mais simples e, em caso de erro, fica mais fácil de debugar do que utilizando o antigo MSXML.
Além da vantagem de não precisar instalar nenhuma DLL externa no servidor onde a aplicação está hospedada. (Esta é o tipo de DLL que sempre dá problema em alguma implantação. Ninguém lembra dela. Só quando dá erro.)
Segue o código:
Dim myRequest As HttpWebRequest = WebRequest.Create("http://www.algumaURL.com.br")
Dim resp As HttpWebResponse = myRequest.GetResponse()
Dim sr As New StreamReader(resp.GetResponseStream())
retorno = sr.ReadToEnd()
sr.Close()
Response.Write(retorno)
O código acima irá obter o código gerado pela página apontada no seu WebRequest.
É necessário importar os seguintes Namespaces:
Imports System.Net
Imports System.IO
Um abraço e até a próxima!!
Assinar:
Postagens (Atom)