Domanda

Quando si utilizza il metodo Post per un httpwebrequest, vedo spesso una linea di codice come questa:

Dim postReq As HttpWebRequest = DirectCast(WebRequest.Create("https://www.empireavenue.com/user/login/do"), HttpWebRequest)
.

Perché facciamo un dritercast qui?Cosa sta facendo esattamente?

Modifica: o forse la mia domanda è, perché chiamiamo Webrequest.Create e lo gettiamo a un httpwebrequest?Cosa sta succedendo qui tecnicamente parlando?

È stato utile?

Soluzione

WebRequest.Create è un metodo di fabbrica che può restituire diversi tipi di richieste.A causa di ciò che tutti vengono restituiti digitati come WebRequest.Ma poiché puoi sapere che ti aspetti che ti aspetti di tornare HttpWebRequest (perché URI che hai fornito è http) è possibile downcast per ottenere l'accesso a metodi e proprietà esposte da HttpWebRequest, che non sono esposte dalla classe base WebRequest. .

Ma, dovresti probabilmente utilizzare WebRequest.CreateHttp() invece di WebRequest.Create(), se sai che stai per utilizzare il protocollo HTTP.

Altri suggerimenti

perché httpwebrequest implementa webrequest e webrequest.create () restituisce un oggetto webrequest.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top