Diferența Dintre Server.Transfer și Response.Redirect

Diferența Dintre Server.Transfer și Response.Redirect
Diferența Dintre Server.Transfer și Response.Redirect

Video: Diferența Dintre Server.Transfer și Response.Redirect

Video: Diferența Dintre Server.Transfer și Response.Redirect
Video: Diferența dintre Response.Redirect și Server.Transfer 2024, Mai
Anonim

Server. Transfer vs Response. Redirect

Server și Response sunt ambele obiecte în ASP. NET. Obiectul server oferă metode și proprietăți pentru diferite activități legate de un server. Transferul este o metodă a obiectului Server și trimite informații despre starea curentă către un alt fișier.asp pentru procesare. Obiectul Răspuns descrie metodele și proprietățile legate de răspunsul unui server. Redirecționarea este o metodă a obiectului Răspuns și trimite un mesaj browserului făcându-l să se conecteze la o altă adresă URL. Chiar dacă atât Server. Transfer, cât și Response. Redirect pot fi utilizate pentru a transfera un utilizator de la o pagină la alta, acestea diferă în ceea ce privește modul în care îndeplinesc de fapt această sarcină.

Ce este Response. Redirect?

Redirecționarea este o metodă în obiectul Răspuns. Când se apelează metoda de răspuns, acesta trimite codul HTTP 302 și adresa URL a paginii web solicitate către browserul utilizatorilor. Codul HTTP 302 informează browserul utilizatorilor că resursa solicitată se află sub o altă adresă URL. Când browserul primește codul, acesta deschide resursa în noua locație. Pagina web solicitată poate locui pe același server ca și pagina care conținea solicitarea sau ar putea să se afle pe alt server. Când solicitați o pagină web care se află pe același server ca pagina curentă, metoda de răspuns poate fi utilizată după cum urmează:

Response. Redirect („nextPage.html”);

Când solicitați o pagină web care se află pe alt server, metoda de răspuns poate fi utilizată după cum urmează:

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

Ce este Server. Transfer?

După cum sa menționat mai devreme, Transferul este o metodă a obiectului server. Când se apelează metoda Transfer, solicitarea inițială este modificată pentru a fi transferată pe o altă pagină din același server. Când se solicită o pagină nouă utilizând Server. Transfer, adresa URL afișată în browserul web al utilizatorilor nu se modifică. Acest lucru se datorează faptului că transferul are loc în partea serverului și browserul nu are cunoștințe despre transfer. Prin utilizarea celei de-a doua suprasarcini pentru Server. Transfer (calea șirului, bool preservForm) și setarea celui de-al doilea parametru ca fiind adevărat, variabilele de formular postate și șirurile de interogare pot fi puse la dispoziție pentru a doua pagină.

Care este diferența dintre Server. Transfer și Response. Redirect?

Chiar dacă atât Server. Transfer, cât și Response. Redirect pot fi utilizate pentru a transfera un utilizator de la o pagină la alta, există unele diferențe între cele două metode. Pe lângă diferența sintactică aparentă, Response. Redirect face o întoarcere către server, în timp ce Server. Transfer schimbă focalizarea serverului web pe o altă pagină web. Prin urmare, utilizând Server. Transfer, resursele serverului pot fi păstrate. Pe de altă parte, Response. Redirect ar putea fi utilizat pentru a redirecționa utilizatorul către o pagină web pe un alt server, în timp ce Server. Transfer poate fi utilizat numai pentru a redirecționa utilizatorul către pagini web de pe același server. De asemenea, utilizând Server. Transfer, proprietățile paginii anterioare pot fi accesate de noua pagină, dar acest lucru nu este posibil cu Response. Redirect. În plus, Răspuns. Redirecționarea modifică adresa URL din bara de adrese a browserului atunci când noua pagină este accesată, dar când se utilizează serverul. Transferul, URL-ul original este păstrat și conținutul paginii este doar înlocuit. Astfel, utilizatorul nu îl poate folosi pentru a marca noua pagină.

Recomandat: