2010-06-16 8 views
10

Ho letto questo MSDN come se ne parlasse e ne ho eseguito l'esempio. http://msdn.microsoft.com/en-us/library/system.net.httpwebrequest.useragent.aspxHttpWebRequest.UserAgent: cosa fa

quando cambio l'uSerAgnet a qualcosa come "blah", l'uscita è sbagliato, ma quando uso la stessa cosa che è nell'esempio di anche quando io commento la riga di codice che sta mettendo l'UserASgent, l'uscita è corretta.

cos'è UserAgent? quando dovrei impostarlo? Come sapere a quale valore dovrei impostarlo?

grazie

risposta

12

L'User Agent viene utilizzato per identificare il sistema client e operativo, ecc E 'più comunemente usato nei browser. È possibile utilizzare l'agente utente per specificare chi si è e il server Web può restituire una risposta con dati appropriati per il proprio cliente. Per esempio il mio User Agent che ho usato per accedere a questo sito è: Mozilla/5.0 (Macintosh; U; Intel Mac OS X 10_6_3; en-US) AppleWebKit/533.4 (KHTML, like Gecko) Chrome/5.0.375.70 Safari/533.4 Se fossi stato un web crawler avrei usato qualcos'altro, qualcosa che il server web avrebbe identificato come un crawler, e il web server (lo sviluppatore web) avrebbe potuto tornare una pagina ottimizzata per l'indicizzazione.

A meno che non sia davvero necessario, vorrei sconsigliare di venire con il proprio User Agent, la mancanza di standardizzazione è un problema abbastanza grande in questo campo.

C'è qualche motivo in particolare è necessario pasticciare con l'agente utente?

This page contiene un elenco di molti agenti utente noti.

+0

grazie, stavo guardando un esempio di codice come sotto e stava impostando userAgent, quindi ho cercato msdn e nel loro esempio lo stanno anche impostando ... ma come possiamo vedere nel mio codice di esempio sotto sta impostando userAgent sul nome di quell'applicazione C# che sta scrivendo, nell'esempio msdn è impostato come "" Client di test .NET Framework "" e come ho detto quando ho commentato quel codice nel link msdn, non è cambiato nulla! si stava ancora lavorando – Bohn

+0

qui è anche il codice di esempio che ho detto nel commento precedente, non c'era spazio per esso nel commento precedente di pubblicarlo: if (wReq è HttpWebRequest) { ((HttpWebRequest) wReq). UserAgent = "CytoWSClient"; } – Bohn

+1

È possibile impostare tutto ciò che si desidera come UserAgent, ma il server Web deve essere in grado di capire cosa fare con esso. Viene utilizzato per inviare risultati personalizzati al client, ad esempio una pagina adatta per un dispositivo mobile, un browser o un crawler. Se desideri semplicemente che il sito web sia visualizzato dal tuo browser, non è necessario impostare la proprietà o, almeno, impostarla su un browser noto in modo da ottenere un risultato prevedibile. –