Rozdiel medzi Server.Transfer a Response.Redirect

Rozdiel medzi Server.Transfer a Response.Redirect
Rozdiel medzi Server.Transfer a Response.Redirect

Video: Rozdiel medzi Server.Transfer a Response.Redirect

Video: Rozdiel medzi Server.Transfer a Response.Redirect
Video: Firmáreň ti poradí: Aký je rozdiel medzi jednoduchým a podvojným účtovníctvom? 2024, November
Anonim

Server. Transfer vs Response. Redirect

Server a Response sú objekty v ASP. NET. Objekt servera poskytuje metódy a vlastnosti pre rôzne úlohy súvisiace so serverom. Transfer je metóda objektu Server a odosiela informácie o aktuálnom stave do iného súboru.asp na spracovanie. Objekt odpovede popisuje metódy a vlastnosti súvisiace s odpoveďou servera. Presmerovanie je metóda objektu Response a odošle správu prehliadaču, čím sa pripojí k inej adrese URL. Aj keď je možné použiť Server. Transfer aj Response. Redirect na prenos používateľa z jednej stránky na druhú, líšia sa v tom, ako skutočne vykonávajú túto úlohu.

Čo je Response. Redirect?

Redirect je metóda v objekte Response. Keď sa zavolá metóda Response, odošle HTTP kód 302 a URL požadovanej webovej stránky do prehliadača používateľov. HTTP kód 302 informuje prehliadač používateľov, že požadovaný zdroj sa nachádza pod inou URL. Keď prehliadač prijme kód, otvorí zdroj na novom mieste. Požadovaná webová stránka sa môže nachádzať na rovnakom serveri ako stránka, ktorá obsahovala požiadavku, alebo sa môže nachádzať na inom serveri. Pri vyžiadaní webovej stránky umiestnenej na rovnakom serveri ako aktuálna stránka možno použiť metódu odpovede nasledovne:

Response. Redirect(“nextPage.html”);

Pri vyžiadaní webovej stránky umiestnenej na inom serveri je možné použiť metódu odpovede takto:

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

Čo je Server. Transfer?

Ako už bolo spomenuté, prenos je metóda Server Object. Keď sa zavolá metóda prenosu, pôvodná požiadavka sa upraví na prenos na inú stránku na rovnakom serveri. Keď sa požaduje nová stránka pomocou Server. Transfer, adresa URL zobrazená vo webovom prehliadači používateľa sa nezmení. Je to preto, že prenos prebieha na strane servera a prehliadač nemá o prenose žiadne informácie. Použitím druhého preťaženia pre Server. Transfer (cesta reťazca, bool protectForm) a nastavením druhého parametra na hodnotu true môžu byť pre druhú stránku sprístupnené odoslané premenné formulára a reťazce dotazu.

Aký je rozdiel medzi Server. Transfer a Response. Redirect?

Aj keď na prenos používateľa z jednej stránky na druhú možno použiť Server. Transfer aj Response. Redirect, medzi týmito dvoma spôsobmi existujú určité rozdiely. Okrem zjavného syntaktického rozdielu, Response. Redirect robí spiatočnú cestu na server, zatiaľ čo Server. Transfer mení zameranie webového servera na inú webovú stránku. Preto pomocou Server. Transfer možno zachovať prostriedky servera. Na druhej strane Response. Redirect možno použiť na presmerovanie používateľa na webovú stránku na inom serveri, zatiaľ čo Server. Transfer možno použiť iba na presmerovanie používateľa na webové stránky na rovnakom serveri. Tiež pomocou Server. Transfer môžu byť vlastnosti predchádzajúcej stránky prístupné z novej stránky, ale to nie je možné s Response. Redirect. Response. Redirect navyše zmení adresu URL v paneli s adresou prehliadača pri prístupe na novú stránku, ale pri použití Server. Transfer sa pôvodná adresa URL zachová a obsah stránky sa len nahradí. Používateľ ho teda nemôže použiť na uloženie novej stránky medzi záložky.

Odporúča: