Server. Transfer vs Response. Yönləndirmə
Server və Cavab hər ikisi ASP. NET-də obyektlərdir. Server obyekti serverlə əlaqəli müxtəlif tapşırıqlar üçün metodlar və xassələri təmin edir. Transfer Server obyektinin metodudur və o, cari vəziyyət haqqında məlumatı emal üçün başqa.asp faylına göndərir. Cavab obyekti serverin cavabı ilə əlaqəli metodları və xüsusiyyətləri təsvir edir. Yenidən yönləndirmə Cavab obyektinin metodudur və o, brauzerə mesaj göndərərək onu başqa bir URL-ə bağlayır. Baxmayaraq ki, həm Server. Transfer, həm də Response. Redirect istifadəçini bir səhifədən digərinə köçürmək üçün istifadə oluna bilər, onlar əslində bu tapşırığı yerinə yetirmələri ilə fərqlənirlər.
Response. Redirect nədir?
Yönləndirmə Cavab obyektində bir üsuldur. Cavab metodu çağırıldıqda, HTTP kodu 302 və tələb olunan veb səhifənin URL-ni istifadəçilərin brauzerinə göndərir. HTTP kodu 302 istifadəçilərin brauzerinə tələb olunan resursun başqa bir URL altında yerləşdiyini bildirir. Brauzer kodu aldıqda, resursu yeni yerdə açır. Tələb olunan veb-səhifə sorğunu ehtiva edən səhifə ilə eyni serverdə yerləşə bilər və ya başqa serverdə yerləşə bilər. Cari səhifə ilə eyni serverdə yerləşən veb səhifəni tələb edərkən, Cavab metodu aşağıdakı kimi istifadə edilə bilər:
Response. Redirect(“nextPage.html”);
Başqa serverdə yerləşən veb səhifəni tələb edərkən, Cavab metodundan aşağıdakı kimi istifadə edilə bilər:
Response. Redirect(“https://www.newServer.com/newPage.aspx”);
Server. Transfer nədir?
Əvvəlcə qeyd edildiyi kimi, Transfer Server Obyektinin metodudur. Köçürmə metodu çağırıldıqda, orijinal sorğu eyni serverdəki başqa bir səhifəyə köçürmək üçün dəyişdirilir. Server. Transfer vasitəsilə yeni səhifə tələb olunduqda, istifadəçilərin veb brauzerində göstərilən URL dəyişmir. Bunun səbəbi transferin server tərəfində baş verməsi və brauzerin köçürmə haqqında heç bir məlumatının olmamasıdır. Server. Transfer (sətir yolu, bool preserveForm) üçün ikinci həddən artıq yükləmədən istifadə etməklə və ikinci parametri doğru olaraq təyin etməklə, yerləşdirilən forma dəyişənləri və sorğu sətirləri ikinci səhifəyə təqdim edilə bilər.
Server. Transfer və Response. Yönləndirmə arasındakı fərq nədir?
Həm Server. Transfer, həm də Response. Redirect istifadəçini bir səhifədən digərinə köçürmək üçün istifadə oluna bilsə də, iki üsul arasında bəzi fərqlər var. Görünən sintaktik fərqlə yanaşı, Response. Redirect serverə gediş-gəliş edir, Server. Transfer isə veb serverin diqqətini fərqli veb səhifəyə dəyişir. Buna görə də, Server. Transfer istifadə edərək, server resursları qorunub saxlanıla bilər. Digər tərəfdən Response. Redirect istifadəçini başqa serverdəki veb səhifəyə yönləndirmək üçün istifadə oluna bilər, Server. Transfer isə istifadəçini yalnız eyni serverdəki veb səhifələrə yönləndirmək üçün istifadə edilə bilər. Həmçinin Server. Transfer istifadə edərək, əvvəlki səhifənin xüsusiyyətlərinə yeni səhifə ilə daxil olmaq olar, lakin Response. Redirect ilə bu mümkün deyil. Əlavə olaraq, Response. Redirect yeni səhifəyə daxil olan zaman brauzerin ünvan çubuğundakı URL-i dəyişir, lakin Server. Transfer-dən istifadə edərkən orijinal URL saxlanılır və səhifənin məzmunu yenicə dəyişdirilir. Beləliklə, istifadəçi ondan yeni səhifəni işarələmək üçün istifadə edə bilməz.