Forskellen mellem Server.Transfer og Response.Redirect

Forskellen mellem Server.Transfer og Response.Redirect
Forskellen mellem Server.Transfer og Response.Redirect

Video: Forskellen mellem Server.Transfer og Response.Redirect

Video: Forskellen mellem Server.Transfer og Response.Redirect
Video: Intrapreneur Vs Entrepreneur Pt 1: A Deep Dive 2024, November
Anonim

Server. Transfer vs Response. Redirect

Server og Response er begge objekter i ASP. NET. Serverobjekt giver metoder og egenskaber til forskellige opgaver relateret til en server. Overførsel er en metode for serverobjektet, og den sender information om den aktuelle tilstand til en anden.asp-fil til behandling. Responsobjekt beskriver metoder og egenskaber relateret til en servers svar. Omdirigering er en metode til Response-objektet, og den sender en besked til browseren, så den forbinder til en anden URL. Selvom både Server. Transfer og Response. Redirect kan bruges til at overføre en bruger fra en side til en anden, er de forskellige i, hvordan de rent faktisk udfører denne opgave.

Hvad er Response. Redirect?

Redirect er en metode i Response-objektet. Når responsmetoden kaldes, sender den HTTP-koden 302 og URL'en på den anmodede webside til brugerens browser. HTTP-koden 302 informerer brugernes browser om, at den anmodede ressource er placeret under en anden URL. Når browseren modtager koden, åbner den ressourcen på den nye placering. Den anmodede webside kan ligge på den samme server som den side, der indeholdt anmodningen, eller den kan ligge på en anden server. Når du anmoder om en webside, der ligger på samme server som den aktuelle side, kan svarmetoden bruges som følger:

Response. Redirect(“nextPage.html”);

Når du anmoder om en webside, der ligger på en anden server, kan svarmetoden bruges som følger:

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

Hvad er Server. Transfer?

Som tidligere nævnt er overførsel en metode til serverobjektet. Når overførselsmetoden kaldes, ændres den oprindelige anmodning til at overføres til en anden side på den samme server. Når der anmodes om en ny side ved hjælp af Server. Transfer, ændres URL vist i brugerens webbrowser ikke. Dette skyldes, at overførslen sker på serversiden, og browseren har ingen viden om overførslen. Ved at bruge den anden overbelastning for Server. Transfer(strengsti, bool preserveForm) og indstille den anden parameter som sand, kan postede formularvariabler og forespørgselsstrenge gøres tilgængelige for den anden side.

Hvad er forskellen mellem Server. Transfer og Response. Redirect?

Selv om både Server. Transfer og Response. Redirect kan bruges til at overføre en bruger fra en side til en anden, er der nogle forskelle mellem de to metoder. Udover den tilsyneladende syntaktiske forskel, foretager Response. Redirect en rundrejse til serveren, mens Server. Transfer ændrer fokus på webserveren til en anden webside. Derfor kan serverressourcer bevares ved at bruge Server. Transfer. På den anden side kan Response. Redirect bruges til at omdirigere brugeren til en webside på en anden server, mens Server. Transfer kun kan bruges til at omdirigere brugeren til websider på den samme server. Også ved at bruge Server. Transfer kan egenskaberne for den forrige side tilgås af den nye side, men dette er ikke muligt med Response. Redirect. Derudover ændrer Response. Redirect URL'en i browserens adresselinje, når den nye side åbnes, men når du bruger serveren. Overfør bibeholdes den originale URL, og sidens indhold erstattes blot. Så brugeren kan ikke bruge den til at bogmærke den nye side.

Anbefalede: