Latihan - Gunakan middleware bawaan
ASP.NET Core menyertakan sekumpulan komponen middleware bawaan yang menangani tugas umum, seperti perutean, autentikasi, dan pengelogan HTTP. Anda dapat menggunakan komponen ini untuk menambahkan fungsionalitas ke aplikasi Anda tanpa menulis middleware kustom.
Pemimpin tim Anda menugaskan Anda untuk membuat situs web barebones untuk perusahaan Anda. Situs web harus menampilkan pesan selamat datang di halaman utama, dan menampilkan riwayat singkat perusahaan di halaman terpisah /about
. Versi aplikasi sebelumnya memiliki riwayat perusahaan di /history
URL, jadi Anda perlu mengalihkan permintaan dari /history
ke /about
untuk mempertahankan kompatibilitas dengan tautan yang ada.
Anda akan menggunakan metode bawaan MapGet
dan UrlRewriter
middleware untuk menyelesaikan tugas-tugas ini.
Membuat aplikasi ASP.NET Core
Anda memerlukan aplikasi ASP.NET Core untuk memainkan peran aplikasi tim Anda. Mari kita buat aplikasi ASP.NET Core baru menggunakan ekstensi C# Dev Kit di Visual Studio Code.
Luncurkan Visual Studio Code.
Tekan Ctrl+Shift+P untuk membuka palet perintah.
Cari dan pilih .NET: Proyek Baru....
Cari dan pilih ASP.NET Core Empty.
Pilih atau buat folder untuk proyek baru.
Beri nama aplikasi baru MyWebApp.
Pilih Buat proyek untuk membuat proyek.
Saat proyek baru terbuka, perluas
Solution Explorer
panel untuk menampilkan file proyek.
Menjalankan aplikasi
Uji aplikasi untuk memastikan aplikasi berjalan.
Di Visual Studio Code, tekan F5 untuk membuat dan menjalankan aplikasi.
- Saat diminta, pilih C# sebagai debugger.
- Saat diminta, pilih C#: MyWebApp [Konfigurasi Default] sebagai konfigurasi peluncuran yang akan digunakan.
Perintah ini memulai aplikasi dan menghostingnya di server web lokal. Jendela browser terbuka dan menampilkan, "Halo, Dunia!"
Tutup jendela browser dan hentikan aplikasi dengan menekan Shift+F5 di Visual Studio Code.
Memetakan titik akhir dan menambahkan penulis ulang URL
Sekarang setelah Anda memiliki aplikasi yang berfungsi, mari kita tambahkan pesan selamat datang ke halaman utama.
Buka file Program.cs.
app.MapGet("/", () => "Hello World!");
Pada baris, ubah pesan "Halo Dunia!" menjadi "Selamat Datang di Contoso!"app.MapGet("/", () => "Welcome to Contoso!");
app.MapGet()
memetakan permintaan HTTP GET ke jalur tertentu. Fitur ASP.NET Core ini disebut perutean titik akhir. Kode ini menambahkan cabang ke alur. Jika jalur permintaan adalah/
, middleware perutean titik akhir merutekan permintaan ke titik akhir ini, yang kemudian menulis "Selamat Datang di Contoso!" ke respons.Pada baris berikutnya, tambahkan kode berikut:
app.MapGet("/about", () => "Contoso was founded in 2000.");
Kode ini menambahkan titik akhir lain. Jika jalur permintaan adalah
/about
, titik akhir menulis "Perusahaan kami didirikan pada tahun 2000." terhadap respons.Sebelum yang pertama
app.MapGet()
, tambahkan kode berikut:app.UseRewriter(new RewriteOptions().AddRedirect("history", "about"));
Kode ini menambahkan komponen middleware penulis ulang URL yang mengalihkan permintaan dari
/history
ke/about
. Metode iniAddRedirect()
mengambil dua parameter: pola ekspresi reguler untuk mencocokkan jalur permintaan, dan jalur pengganti untuk dialihkan.Tambahkan direktif berikut ke bagian atas file:
using Microsoft.AspNetCore.Rewrite;
Direktif ini menyelesaikan referensi ke
RewriteOptions
kelas .
Menguji perubahan
- Simpan semua perubahan Anda dan jalankan aplikasi seperti sebelumnya.
- Saat jendela browser terbuka, perhatikan URL akar menampilkan "Selamat Datang di Contoso!" Tambahkan
/about
ke URL dan tekan Enter. Browser harus menampilkan "Contoso didirikan pada tahun 2000." - Ganti
/about
dengan/history
di URL dan tekan Enter. Browser harus mengalihkan ke/about
. - Biarkan aplikasi berjalan untuk latihan berikutnya.