Differenza tra Server.Transfer e Response.Redirect

Differenza tra Server.Transfer e Response.Redirect
Differenza tra Server.Transfer e Response.Redirect

Video: Differenza tra Server.Transfer e Response.Redirect

Video: Differenza tra Server.Transfer e Response.Redirect
Video: Ragioni da dipendente o da imprenditore? 2024, Novembre
Anonim

Server. Transfer vs Response. Redirect

Server e Response sono entrambi oggetti in ASP. NET. L'oggetto Server fornisce metodi e proprietà per varie attività relative a un server. Il trasferimento è un metodo dell'oggetto Server e invia le informazioni sullo stato corrente a un altro file.asp per l'elaborazione. L'oggetto Response descrive i metodi e le proprietà relativi alla risposta di un server. Il reindirizzamento è un metodo dell'oggetto Response e invia un messaggio al browser collegandolo a un URL diverso. Anche se Server. Transfer e Response. Redirect possono essere utilizzati per trasferire un utente da una pagina all' altra, sono diversi nel modo in cui eseguono effettivamente questa attività.

Cos'è Response. Redirect?

Redirect è un metodo nell'oggetto Response. Quando viene chiamato il metodo Response, invia il codice HTTP 302 e l'URL della pagina Web richiesta al browser degli utenti. Il codice HTTP 302 informa il browser degli utenti che la risorsa richiesta si trova in un URL diverso. Quando il browser riceve il codice, apre la risorsa nella nuova posizione. La pagina web richiesta può risiedere sullo stesso server della pagina che conteneva la richiesta oppure potrebbe risiedere in un altro server. Quando si richiede una pagina Web che risieda sullo stesso server della pagina corrente, il metodo di risposta può essere utilizzato come segue:

Response. Redirect("nextPage.html");

Quando si richiede una pagina web che risiede su un altro server, il metodo di risposta può essere utilizzato come segue:

Response. Redirect(“https://www.newServer.com/newPage.aspx”);

Cos'è Server. Transfer?

Come accennato in precedenza, Transfer è un metodo dell'oggetto Server. Quando viene chiamato il metodo di trasferimento, la richiesta originale viene modificata per essere trasferita a un' altra pagina nello stesso server. Quando viene richiesta una nuova pagina utilizzando il Server. Transfer, l'URL visualizzato nel browser Web degli utenti non cambia. Questo perché il trasferimento avviene sul lato server e il browser non ha alcuna conoscenza del trasferimento. Usando il secondo overload per Server. Transfer(string path, bool preserveForm) e impostando il secondo parametro come true, le variabili del modulo inviate e le stringhe di query possono essere rese disponibili alla seconda pagina.

Qual è la differenza tra Server. Transfer e Response. Redirect?

Anche se sia Server. Transfer che Response. Redirect possono essere usati per trasferire un utente da una pagina all' altra, ci sono alcune differenze tra i due metodi. Oltre all'apparente differenza sintattica, Response. Redirect effettua un viaggio di andata e ritorno al server, mentre Server. Transfer sposta il focus del server Web su una pagina Web diversa. Pertanto, utilizzando Server. Transfer, è possibile preservare le risorse del server. D' altra parte Response. Redirect potrebbe essere utilizzato per reindirizzare l'utente a una pagina Web in un altro server, mentre Server. Transfer può essere utilizzato solo per reindirizzare l'utente a pagine Web sullo stesso server. Anche utilizzando Server. Transfer, è possibile accedere alle proprietà della pagina precedente dalla nuova pagina, ma ciò non è possibile con Response. Redirect. Inoltre, Response. Redirect modifica l'URL nella barra degli indirizzi del browser quando si accede alla nuova pagina ma quando si utilizza Server. Transfer l'URL originale viene mantenuto e il contenuto della pagina viene semplicemente sostituito. Quindi l'utente non può usarlo per aggiungere la nuova pagina ai preferiti.

Consigliato: