Ocelot adalah gateway API sumber terbuka yang diimplementasikan di .NET Core, yang kuat dan mencakup perutean, agregasi permintaan, penemuan layanan, autentikasi, autentikasi, pemutus sirkuit pembatas arus, dan integrasi penyeimbang beban bawaan dengan Service Fabric dan Pelacakan Kupu-kupu. Fungsi-fungsi ini hanya perlu sederhana untuk diselesaikan, dan kami akan menjelaskan konfigurasi fungsi-fungsi ini satu per satu.
Tentunya proyek Java juga memiliki gateway, Spring Cloud Gateway adalah framework gateway baru Spring Cloud, sebelumnya Netflix Zuul.
Pertama, buat proyek kosong ASP.NET Core 3.1 dengan nama: dotnet-gateway-demo
Nuget menginstal Ocelot dengan perintah berikut:
Buat dua proyek API asp.net Core 3.1 baru, masing-masing bernama web-api-demo1 dan web-api-demo2. Struktur solusinya adalah sebagai berikut:
Ubah metode Get dari pengontrol WeatherForecastController dari proyek "web-api-demo1" dan "web-api-demo2" dengan kode berikut:
Tautan demo1: http://localhost:7853/weatherforecast Tautan Demo2: http://localhost:7863/weatherforecast
Di direktori root proyek dotnet-gateway-demo, buat file konfigurasi baru "ocelot.json", sebagai berikut:
di mana alamat BaseUrl diisi dengan URL peluncuran proyek saat ini,Isi sesuai dengan situasi Anda yang sebenarnya。
- DownstreamPathTemplate: Jalur relatif layanan hilir
- DownstreamScheme: Skema http layanan hilir
- DownstreamHostAndPorts: Alamat layanan hilir, jika Anda menggunakan LoadBalancer, Anda dapat mengisi beberapa bidang di sini
- UpstreamPathTemplate: 上游也就是用户输入的请求Url模板
- UpstreamHttpMethod: 上游请求http方法,可使用数组
Bergabunglah dengan CreateHostBuilder Program.cs
Edit file Startup.cs dengan kode berikut:
Kode utamanya adalah:
Siapkan proyek startup dan mulai 3 proyek web secara bersamaan, seperti yang ditunjukkan pada gambar berikut:
Setelah penyiapan selesai, luncurkan dan, sesuai dengan aturan konfigurasi kami, coba akses:Login hyperlink terlihat.danLogin hyperlink terlihat.Seperti yang ditunjukkan di bawah ini:
Kami menambahkan konfigurasi berikut ke file ocelot.json, coba balikkan proxy situs ini, konfigurasinya adalah sebagai berikut:
Cobalah untuk mengunjungi:Login hyperlink terlihat.
Unduhan kode sumber:
Wisatawan, jika Anda ingin melihat konten tersembunyi dari posting ini, silakan Jawab
Dokumentasi Referensi:Login hyperlink terlihat.
(Akhir)
|