Di masa lalu, saya menulis proyek web eksperimental kecil ketika saya bekerja di perusahaan perangkat lunak asing. Salah satu persyaratannya adalah mendukung berbagai bahasa (Cina Sederhana, Cina Tradisional, Inggris, Korea, Jepang) untuk pengguna. antarmuka. Pada saat itu, teknologi templat digunakan untuk mengimplementasikannya. Persyaratan ini terpenuhi dan pengaturan pengguna disimpan menggunakan cookie. Namun, pengguna masih perlu memilih bahasa saat masuk untuk pertama kalinya (atau setelah menghapus cookie ). Jadi apakah ini bisa lebih nyaman bagi pengguna? Bisakah suatu program digunakan untuk membantu seleksi secara otomatis?
Jawabannya iya, semua orang menggunakan Google. Jika Anda menggunakan sistem berbahasa Mandarin untuk membuka beranda Google, maka secara alami beranda berbahasa Mandarin yang akan terbuka, bukan bahasa lain. Karena Google akan secara otomatis menentukan bahasa pilihan untuk sistem pengguna.
Bagaimana kita bisa melakukannya seperti Google? Sebenarnya sangat sederhana.
Informasi Header HTTP yang dikirim oleh browser ke server web berisi informasi seperti Bahasa Terima. Informasi ini adalah bahasa di bawah Alat->Opsi Internet->Umum di browser server, yang dapat menjadi daftar prioritas dari beberapa bahasa yang dapat diterima.
Izinkan saya mengambil ASP sebagai contoh untuk memperkenalkan secara singkat "cara menentukan bahasa pengguna secara otomatis":
<%
Fungsi RegExpTest(pola, strng)
Redupkan regEx,Match,Matches' membuat variabel.
Setel regEx = RegExp Baru' Buat ekspresi reguler.
regEx.Pattern = patrn' mengatur polanya.
regEx.IgnoreCase = True' menetapkan apakah karakter peka huruf besar-kecil.
regEx.Global = True'Menetapkan ketersediaan global.
Setel Kecocokan = regEx.Execute(strng)'Jalankan pencarian.
Untuk Setiap Pertandingan dalam Pertandingan diulangi melalui koleksi pertandingan.
RetStr = RetStr&Match.Nilai
Berikutnya
RegExpTest = RetStr
Fungsi Akhir
AL = Request.ServerVariables("HTTP_ACCEPT_LANGUAGE")' Dapatkan parameter bahasa yang dapat diterima di browser pengguna
LG = RegExpTest("^[az-]+",AL)' Dapatkan preferensi bahasa browser pengguna yang dapat diterima
pilih kasus LG
kasus "zh-cn"
respon.tulis "中文(中国)"
kasus "zh-tw"
respon.tulis "Cina (Taiwan)"
kasus "zh-mo"
respon.tulis "Cina (SAR Makau)"
kasus "zh-hk"
respon.tulis "Cina (SAR Hong Kong)"
kasus "zh-sg"
respon.tulis "Cina (Singapura)"
kasus "en-us"
respon.tulis "Bahasa Inggris (Amerika Serikat)"
kasus "ja"
respon.tulis "Jepang"
kasus "ko"
respon.tulis "Bahasa Korea"
akhir pilih
%>