TransferRequest vs Transfer di ASP.Net

Saya telah melalui tautan yang disebutkan di bawah ini,

forum iis dan Masalah HttpModules & Server.Transfer / Server.TransferRequest / RewritePath. namun tidak dapat menangkap konsep di balik metode transfer ini.

Bagaimana cara kerjanya? Dan mana yang lebih disukai dalam situasi berbeda?

Adakah yang bisa menjelaskan kepada saya metode TransferRequest vs Transfer untuk transfer sisi server di asp.net dan perannya?

Terima kasih sebelumnya


person Sujit    schedule 21.02.2013    source sumber


Jawaban (2)


HttpServerUtility.Transfer Menghentikan eksekusi halaman saat ini dan memulai eksekusi URL yang disediakan. Ini pada dasarnya memetakan dan mengeksekusi Halaman ASP.NET baru (atau menyajikan file statis) sesuai dengan url yang disediakan. Ia melakukan hal ini di jalur permintaan saat ini, tanpa menerapkan konfigurasi baru ke url baru, atau menjalankan kembali modul IIS untuk url baru. Karena itu, ini sangat cepat, tetapi juga mencegah banyak skenario yang mungkin terjadi dengan TRQ.

HttpServerUtility.TransferRequest Melakukan eksekusi asinkron dari URL yang disediakan. Ini adalah permintaan anak IIS lengkap yang tersembunyi, yang memungkinkannya menjalankan kembali seluruh pipa permintaan untuk permintaan baru seolah-olah itu adalah permintaan terpisah, mendapatkan konfigurasi yang benar untuk permintaan tersebut, dan menjalankan semua modul IIS normal termasuk otentikasi, otorisasi, dll. Misalnya, IIS akan menerapkan aturan otorisasi untuk url baru, dibandingkan dengan url sebelumnya.

person Community    schedule 16.05.2013

TransferRequest menjalankan kembali seluruh saluran permintaan seolah-olah itu adalah permintaan terpisah. Ini berarti modul IIS dan ASP.NET diterapkan kembali; aturan autentikasi dan otorisasi untuk URL baru akan dihormati. Perhatikan bahwa TransferRequest memerlukan mode pipa terintegrasi IIS 7+, dan transfer dapat dilakukan ke halaman ASP atau sumber daya lain seperti file XML.

Transfer mentransfer eksekusi dari satu halaman ASP ke halaman ASP lain di server. Tidak seperti TransferRequest, IIS dan ASP.NET TIDAK akan memverifikasi bahwa pengguna saat ini berwenang untuk melihat sumber daya yang dikirimkan dengan metode Transfer. Jika Anda perlu memaksa otorisasi ulang, dan mode saluran terintegrasi bukanlah suatu pilihan, hubungi Alihkan alih-alih metode Transfer. Pengalihan memicu pengalihan sisi klien sehingga permintaan baru akan tunduk pada semua logika otentikasi dan otorisasi IIS dan ASP.NET.

person Robert Claypool    schedule 30.03.2013