Apabila menggunakan aplikasi Go, ia boleh membosankan untuk memasukkan fail statik seperti CSS dan JavaScript dalam pakej penggunaan anda. Untuk memudahkan proses ini, artikel ini meneroka pendekatan alternatif: membakar fail statik ini terus ke dalam binari aplikasi dan menyampaikannya daripada memori.
Pengendali FileServer standard memerlukan Sistem Fail objek, biasanya dibuat menggunakan http.Dir untuk mewakili sistem fail asas. Walau bagaimanapun, dengan melaksanakan FileSystem anda sendiri, anda boleh menyampaikan fail dari memori.
Kod yang disediakan menunjukkan pelaksanaan FileSystem tersuai ini (InMemoryFS) dengan dua fungsi: Buka dan MuatkanFail. Open mengambil semula fail daripada peta memori dan LoadFile membina objek InMemoryFile dengan maklumat yang diperlukan.
Untuk menyokong penyajian fail daripada memori, jenis InMemoryFile melaksanakan http.Antara muka fail. Ia termasuk kaedah untuk menutup, mendapatkan semula maklumat fail, membaca dan mencari dalam fail.
Setelah Sistem Fail tersuai ditakrifkan, anda boleh menggunakannya dengan pengendali FileServer sebagai biasalah. Kod contoh memulakan InMemoryFS, memuatkan fail statik ke dalam memori dan menyediakan FileServer dengan FileSystem tersuai.
Nota: Walaupun pelaksanaan yang disediakan berfungsi untuk penyajian fail statik asas, ia mempunyai beberapa had dan tidak disyorkan untuk kegunaan pengeluaran. Rujuk rujukan yang disediakan untuk penyelesaian yang lebih mantap.
Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Melayan Fail Statik daripada Memori dalam Aplikasi Go?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!