Menyajikan Halaman Web dan Laluan API pada Pelabuhan yang Sama dengan Corak Pemegang Berbeza
Dalam aplikasi web di mana kedua-dua halaman web dan laluan API memerlukan untuk disampaikan pada port yang sama, adalah mungkin untuk mencapai ini menggunakan pakej net/http yang disediakan oleh perpustakaan standard Go. Prinsip utama ialah keutamaan corak yang lebih panjang berbanding yang lebih pendek.
Pertimbangkan coretan kod berikut:
fs := http.FileServer(http.Dir("server/webapps/play_maths")) http.Handle("/", fs) // Serves static web pages from the specified directory http.Handle("/api", api.UserRoutes()) // Handles API routes using the UserRoutes function
Dalam contoh ini, pengendali fail didaftarkan untuk laluan URL akar "/ ", yang bermaksud ia akan mengendalikan sebarang permintaan yang tidak sepadan dengan corak yang lebih panjang. Pengendali laluan API kemudiannya didaftarkan untuk laluan "/api". Memandangkan "/api" ialah corak yang lebih panjang daripada "/", sebarang permintaan yang bermula dengan "/api" akan diarahkan kepada pengendali laluan API, manakala semua permintaan lain akan pergi ke pengendali fail.
Nota bahawa adalah penting untuk memastikan tiada fail wujud dalam direktori "/api", kerana ia tidak boleh diakses kerana peraturan keutamaan. Dengan memanfaatkan ciri keutamaan corak, anda boleh menyediakan halaman web dan laluan API pada port yang sama menggunakan pengendali yang berbeza.
Atas ialah kandungan terperinci Bagaimana untuk Melayan Halaman Web dan Laluan API pada Port yang Sama dengan Corak Pemegang Berbeza dalam Go?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!