Server.Transfer ve Response.Redirect Arasındaki Fark

Server.Transfer ve Response.Redirect Arasındaki Fark
Server.Transfer ve Response.Redirect Arasındaki Fark

Video: Server.Transfer ve Response.Redirect Arasındaki Fark

Video: Server.Transfer ve Response.Redirect Arasındaki Fark
Video: Kurum İçi Girişimcilik Nedir? İçGirişimcilik Nasıl Uygulanır? 2024, Temmuz
Anonim

Server. Transfer vs Response. Redirect

Sunucu ve Yanıt, ASP. NET'teki nesnelerdir. Sunucu nesnesi, bir sunucuyla ilgili çeşitli görevler için yöntemler ve özellikler sağlar. Transfer, Server nesnesinin bir yöntemidir ve mevcut durumun bilgisini işlenmek üzere başka bir.asp dosyasına gönderir. Yanıt nesnesi, bir sunucunun yanıtıyla ilgili yöntemleri ve özellikleri açıklar. Yönlendirme, Response nesnesinin bir yöntemidir ve tarayıcıya farklı bir URL'ye bağlanmasını sağlayan bir mesaj gönderir. Hem Server. Transfer hem de Response. Redirect bir kullanıcıyı bir sayfadan diğerine aktarmak için kullanılabilse de, bu görevi gerçekte nasıl gerçekleştirdikleri bakımından farklıdırlar.

Response. Redirect nedir?

Redirect, Response nesnesindeki bir yöntemdir. Response metodu çağrıldığında HTTP kodu 302 ve istenilen web sayfasının URL adresini kullanıcıların tarayıcısına gönderir. HTTP kodu 302, kullanıcıların tarayıcısına, istenen kaynağın farklı bir URL altında bulunduğunu bildirir. Tarayıcı kodu aldığında, kaynağı yeni konumda açar. İstenen web sayfası, isteği içeren sayfayla aynı sunucuda bulunabilir veya başka bir sunucuda bulunabilir. Geçerli sayfayla aynı sunucuda bulunan bir web sayfası talep edilirken, Response yöntemi şu şekilde kullanılabilir:

Response. Redirect(“nextPage.html”);

Başka bir sunucuda bulunan bir web sayfası istenirken, Response yöntemi şu şekilde kullanılabilir:

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

Sunucu Aktarımı Nedir?

Daha önce bahsedildiği gibi, Transfer, Sunucu Nesnesinin bir yöntemidir. Aktarım yöntemi çağrıldığında, orijinal istek aynı sunucudaki başka bir sayfaya aktarılacak şekilde değiştirilir. Server. Transfer kullanılarak yeni bir sayfa istendiğinde, kullanıcıların web tarayıcısında gösterilen URL değişmez. Bunun nedeni, aktarımın sunucu tarafında gerçekleşmesi ve tarayıcının aktarım hakkında herhangi bir bilgisi olmamasıdır. Server. Transfer(string path, bool saveForm) için ikinci aşırı yüklemeyi kullanarak ve ikinci parametreyi true olarak ayarlayarak, gönderilen form değişkenleri ve sorgu dizeleri ikinci sayfa için kullanılabilir hale getirilebilir.

Server. Transfer ve Response. Redirect arasındaki fark nedir?

Bir kullanıcıyı bir sayfadan diğerine aktarmak için hem Server. Transfer hem de Response. Redirect kullanılabilse de, iki yöntem arasında bazı farklılıklar vardır. Görünür sözdizimsel farkın yanı sıra, Response. Redirect sunucuya bir gidiş-dönüş yapar, Server. Transfer ise web sunucusunun odağını farklı bir web sayfasına değiştirir. Bu nedenle Server. Transfer kullanılarak sunucu kaynakları korunabilir. Öte yandan Response. Redirect, kullanıcıyı başka bir sunucudaki bir web sayfasına yönlendirmek için kullanılabilirken, Server. Transfer yalnızca kullanıcıyı aynı sunucudaki web sayfalarına yönlendirmek için kullanılabilir. Ayrıca Server. Transfer kullanılarak yeni sayfadan bir önceki sayfanın özelliklerine ulaşılabilir ancak Response. Redirect ile bu mümkün değildir. Ek olarak, Response. Redirect, yeni sayfaya erişildiğinde ancak Sunucu kullanıldığında tarayıcının adres çubuğundaki URL'yi değiştirir. Orijinal URL'yi aktarın ve sayfanın içeriği yeni değiştirilir. Böylece kullanıcı yeni sayfayı favorilere eklemek için kullanamaz.

Önerilen: