Alıştırma - Yerleşik ara yazılım kullanma
ASP.NET Core, yönlendirme, kimlik doğrulaması ve HTTP günlüğü gibi yaygın görevleri işleyen bir dizi yerleşik ara yazılım bileşeni içerir. Özel ara yazılım yazmadan uygulamanıza işlevsellik eklemek için bu bileşenleri kullanabilirsiniz.
Ekip lideriniz, şirketiniz için bir barebones web sitesi oluşturmanız için sizi görevlendirdi. Web sitesi ana sayfada bir karşılama iletisi görüntülemeli ve şirketin kısa geçmişini ayrı /about
bir sayfada görüntülemelidir. Uygulamanın önceki bir sürümünde URL'de /history
şirket geçmişi vardı, bu nedenle mevcut bağlantılarla uyumluluğu korumak için istekleri 'den /history
adresine /about
yeniden yönlendirmeniz gerekir.
Bu görevleri gerçekleştirmek için yerleşik MapGet
yöntemi ve UrlRewriter
ara yazılımı kullanacaksınız.
ASP.NET Core uygulaması oluşturma
Ekibinizin uygulamasının rolünü oynamak için bir ASP.NET Core uygulamasına ihtiyacınız vardır. Visual Studio Code'da C# Dev Kit uzantısını kullanarak yeni bir ASP.NET Core uygulaması oluşturalım.
Visual Studio Code’u başlatın.
Komut paletini açmak için Ctrl+Shift+P tuşlarına basın.
.NET: Yeni Proje.... için arama yapın ve seçin.
ASP.NET Çekirdek Boş öğesini arayın ve seçin.
Yeni proje için bir klasör seçin veya oluşturun.
Yeni uygulamaya MyWebApp adını verin.
Projeyi oluşturmak için Proje oluştur'u seçin.
Yeni proje açıldığında, proje dosyalarını görüntülemek için bölmeyi genişletin
Solution Explorer
.
Uygulamayı çalıştırma
Çalıştığından emin olmak için uygulamayı test edin.
Visual Studio Code'da uygulamayı derlemek ve çalıştırmak için F5 tuşuna basın.
- İstendiğinde hata ayıklayıcı olarak C# öğesini seçin.
- İstendiğinde, kullanılacak başlatma yapılandırması olarak C#: MyWebApp [Varsayılan Yapılandırma] öğesini seçin.
Bu komut uygulamayı başlatır ve yerel bir web sunucusunda barındırıyor. Bir tarayıcı penceresi açılır ve "Merhaba, Dünya!"
Visual Studio Code'da Shift+F5 tuşlarına basarak tarayıcı penceresini kapatın ve uygulamayı durdurun.
Uç noktaları eşleme ve URL yeniden yazma ekleme
Artık çalışan bir uygulamanız olduğuna göre, ana sayfaya bir hoş geldiniz iletisi ekleyelim.
Program.cs dosyasını açın.
Satırda
app.MapGet("/", () => "Hello World!");
, "Merhaba Dünya!" iletisini "Contoso'ya Hoş Geldiniz!" olarak değiştirinapp.MapGet("/", () => "Welcome to Contoso!");
app.MapGet()
BIR HTTP GET isteğini belirtilen bir yola eşler. ASP.NET Core'un bu özelliği uç nokta yönlendirme olarak adlandırılır. Bu kod işlem hattına bir dal ekler. İstek yolu ise/
, uç nokta yönlendirme ara yazılımı isteği bu uç noktaya yönlendirir ve ardından yanıta "Contoso'ya Hoş Geldiniz!" yazar.Sonraki satıra aşağıdaki kodu ekleyin:
app.MapGet("/about", () => "Contoso was founded in 2000.");
Bu kod başka bir uç nokta ekler. İstek yolu ise
/about
, uç nokta yanıta "Şirketimiz 2000 yılında kuruldu" yazar.İlk
app.MapGet()
önce aşağıdaki kodu ekleyin:app.UseRewriter(new RewriteOptions().AddRedirect("history", "about"));
Bu kod, istekleri öğesine
/history
/about
yönlendiren bir URL yeniden yazma ara yazılımı bileşeni ekler.AddRedirect()
yöntemi iki parametre alır: istek yoluyla eşleşecek normal ifade deseni ve yeniden yönlendirilecek değiştirme yolu.Dosyanın en üstüne aşağıdaki yönergeyi ekleyin:
using Microsoft.AspNetCore.Rewrite;
Bu yönerge, sınıfına başvuruyu
RewriteOptions
çözümler.
Değişiklikleri test etme
- Tüm değişikliklerinizi kaydedin ve uygulamayı daha önce olduğu gibi çalıştırın.
- Tarayıcı penceresi açıldığında kök URL'de "Contoso'ya Hoş Geldiniz!" ifadesinin gösterildiğine dikkat edin URL'ye ekleyin
/about
ve Enter tuşuna basın. Tarayıcıda "Contoso 2000 yılında kuruldu" ifadesi görüntülenmelidir. - URL'de
/about
öğesini/history
ile değiştirin ve Enter tuşuna basın. Tarayıcı adresine/about
yeniden yönlendirilmelidir. - Sonraki alıştırma için uygulamayı çalışır durumda bırakın.