Server.Transfer va Response.Redirect oʻrtasidagi farq

Server.Transfer va Response.Redirect oʻrtasidagi farq
Server.Transfer va Response.Redirect oʻrtasidagi farq

Video: Server.Transfer va Response.Redirect oʻrtasidagi farq

Video: Server.Transfer va Response.Redirect oʻrtasidagi farq
Video: ASP NET Server Controls Server Transfer Vs Response Redirect Part-8 | ASP.NET Tutorials | BangarRaju 2024, Iyul
Anonim

Server. Transfer va Response. Redirect

Server va Response ikkalasi ham ASP. NETdagi ob'ektlardir. Server ob'ekti server bilan bog'liq turli vazifalar uchun usullar va xususiyatlarni taqdim etadi. Transfer - bu Server ob'ektining usuli bo'lib, u joriy holat haqidagi ma'lumotlarni qayta ishlash uchun boshqa.asp fayliga yuboradi. Response ob'ekti server javobi bilan bog'liq usullar va xususiyatlarni tavsiflaydi. Qayta yo'n altirish - bu Response ob'ektining usuli bo'lib, u boshqa URL manziliga ulanish uchun brauzerga xabar yuboradi. Garchi Server. Transfer va Response. Redirect ikkalasi ham foydalanuvchini bir sahifadan ikkinchisiga o'tkazish uchun ishlatilishi mumkin bo'lsa ham, ular bu vazifani qanday bajarishlari bilan farq qiladi.

Response. Redirect nima?

Redirect - bu Response obyektidagi usul. Response usuli chaqirilganda, u HTTP kodini 302 va so'ralgan veb-sahifaning URL manzilini foydalanuvchi brauzeriga yuboradi. HTTP kodi 302 foydalanuvchi brauzeriga so'ralgan manba boshqa URL manzilida joylashganligi haqida xabar beradi. Brauzer kodni olganida, u yangi joyda resursni ochadi. So'ralgan veb-sahifa so'rovni o'z ichiga olgan sahifa bilan bir xil serverda bo'lishi mumkin yoki u boshqa serverda joylashgan bo'lishi mumkin. Joriy sahifa bilan bir xil serverda joylashgan veb-sahifani so'rashda Javob berish usuli quyidagicha ishlatilishi mumkin:

Response. Redirect(“nextPage.html”);

Boshqa serverda joylashgan veb-sahifani soʻrashda Javob berish usuli quyidagicha ishlatilishi mumkin:

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

Server. Transfer nima?

Yuqorida aytib o'tilganidek, Transfer Server ob'ektining usuli hisoblanadi. O'tkazish usuli chaqirilganda, asl so'rov xuddi shu serverdagi boshqa sahifaga o'tkazish uchun o'zgartiriladi. Server. Transfer yordamida yangi sahifa so'ralganda, foydalanuvchilarning veb-brauzerida ko'rsatilgan URL o'zgarmaydi. Buning sababi, uzatish server tomonida sodir bo'ladi va brauzerda uzatish haqida hech qanday ma'lumot yo'q. Server. Transfer (string yo'li, bool preserveForm) uchun ikkinchi ortiqcha yukdan foydalanish va ikkinchi parametrni rost deb o'rnatish orqali e'lon qilingan shakl o'zgaruvchilari va so'rovlar satrlarini ikkinchi sahifaga ochish mumkin.

Server. Transfer va Response. Redirect oʻrtasidagi farq nima?

Server. Transfer va Response. Redirect ikkalasi ham foydalanuvchini bir sahifadan ikkinchisiga oʻtkazish uchun ishlatilishi mumkin boʻlsa-da, ikkala usul oʻrtasida baʼzi farqlar mavjud. Ko'rinib turgan sintaktik farqdan tashqari, Response. Redirect serverga aylanib chiqadi, Server. Transfer esa veb-serverning diqqat markazini boshqa veb-sahifaga o'zgartiradi. Shuning uchun Server. Transfer yordamida server resurslarini saqlab qolish mumkin. Boshqa tomondan, Response. Redirect foydalanuvchini boshqa serverdagi veb-sahifaga yo'n altirish uchun ishlatilishi mumkin, Server. Transfer esa foydalanuvchini bir xil serverdagi veb-sahifalarga yo'n altirish uchun ishlatilishi mumkin. Shuningdek, Server. Transfer yordamida oldingi sahifaning xususiyatlariga yangi sahifa orqali kirish mumkin, ammo Response. Redirect bilan bu mumkin emas. Bundan tashqari, Response. Redirect yangi sahifaga kirishda brauzerning manzil satridagi URL manzilini o'zgartiradi, lekin Server. Transferdan foydalanganda asl URL saqlanib qoladi va sahifa mazmuni endigina almashtiriladi. Shuning uchun foydalanuvchi undan yangi sahifaga xatcho‘p qo‘yish uchun foydalana olmaydi.

Tavsiya: