2010-04-30 4 views
8

Sto tentando di richiamare un URL in C#, sono solo interessato a invocare e non mi interessa la risposta. Quando ho il seguente, significa che sto invocando l'URL?Invocazione di un URL - C#

HttpWebRequest request = (HttpWebRequest)WebRequest.Create(url); 

risposta

18

È necessario eseguire in realtà la richiesta:

var request = (HttpWebRequest)WebRequest.Create(url); 
request.GetResponse(); 

La chiamata al GetResponse rende la chiamata in uscita al server. Puoi scartare la risposta se non ti interessa.

+4

È necessario, tuttavia, chiudere la risposta successivamente per evitare di mantenere aperta la connessione/download. – Lucero

2

No quando si dice request.GetResponse(); allora lo invochi.

1

Probabilmente no. Vedi: http://www.codeproject.com/KB/webservices/HttpWebRequest_Response.aspx

È possibile impostare il metodo, ContentType, ecc., Tutto ciò che deve essere eseguito prima che la richiesta venga effettivamente inviata. Sembra che GetResponse() invii effettivamente la richiesta. Puoi semplicemente ignorare il valore di ritorno.

4

È possibile utilizzare questo:

string address = "http://www.yoursite.com/page.aspx"; 
using (WebClient client = new WebClient()) 
{ 
    client.DownloadString(address); 
} 
4

First) Creare WebRequest per eseguire URL.
Secondo) Utilizzare WebResponse per ottenere risposta.
Infine) Utilizzare StreamReader per decodificare la risposta e convertirla in stringa normale.

string url = "Your request url"; 
WebRequest request = HttpWebRequest.Create(url); 
WebResponse response = request.GetResponse(); 
StreamReader reader = new StreamReader(response.GetResponseStream()); 
string responseText = reader.ReadToEnd(); 
+0

Leggere attentamente la domanda prima di inviare una risposta. In realtà non stai rispondendo alla domanda, e il tuo codice sta facendo qualcosa che la domanda * dice specificamente * che non vogliono fare. –

+0

Uomo che hai salvato la mia giornata ... grazie mille –

+0

@RKSharma il tuo benvenuto fratello ;-) –