Array
(
)

Capturar resultado de uma pagina externa em ASP.NET

Will
   - 07 nov 2005

Galera,

Gostaria de saber como executar uma página externa
(exemplo: www.paginaexterna.com/executa.aspx?parametro=1)
e capturar seu resultado sem sair da minha aplicação. De preferência sem mostrar a execução da página para o usuário.

Atenciosamente, Will


Sanses
   - 08 nov 2005

Oi

Uma sugestão seria criar um WebService, assim sua página executaria o código e já mostraria o retorno, sem mostrar nada ao usuário.

Sanses


Will
   - 11 nov 2005

Obrigado Sanses!
Como não tenho experiência em WebServices e estou há pouco tempo no .NET eu não consegui fazer o que queria. Ma solucionei da seguinte forma:

var
myRequest: WebRequest;
myResponse: WebResponse;
U: Uri;
ReceiveStream: Stream;
Encode: Encoding;
readStream: StreamReader;
read: array [0..256] of char;
i, count: Integer;
str: String;
begin
str := ´´;
for i := 0 to 3 do
begin
U := Uri.Create(´http://www.pagina.com.br/result?valor=´+i.tostring);
myRequest := WebRequest.CreateDefault(U);
myResponse := myRequest.GetResponse;

ReceiveStream := myResponse.GetResponseStream;
Encode := System.Text.Encoding.GetEncoding(´utf-8´);

readStream := StreamReader.Create( ReceiveStream, encode );

count := readStream.Read( read, 0, 256 );
while (count > 0) do
begin
str := str + read;
count := readStream.Read(read, 0, 256);
end;

readStream.Close;

myResponse.Close;
end;

Response.Write(str);
end;