Golang ialah bahasa pengaturcaraan yang cekap yang sering digunakan untuk membuat aplikasi web. Dalam aplikasi web, alamat URL selalunya perlu disahkan untuk memastikan ia sepadan dengan matlamat kami. Dalam artikel ini, kami akan memperkenalkan cara menggunakan ungkapan biasa di Golang untuk mengesahkan sama ada alamat URL ialah protokol HTTPS.
Pertama, kita perlu memahami format URL protokol HTTPS. URL protokol HTTPS mewarisi sebahagian daripada URL protokol HTTP, tetapi ia mempunyai beberapa ciri unik. Format asas URL protokol HTTPS ialah:
https://<host>:<port>/<path>?<query>#<fragment>
di mana, <host>
mewakili nama hos, yang boleh menjadi nama domain atau alamat IP <port>
ialah nombor port, lalai ialah 443; <path>
ialah laluan, menunjuk ke Sumber pada pelayan; <query>
ialah parameter pertanyaan yang digunakan untuk menghantar maklumat tambahan kepada pelayan <fragment>
ialah serpihan yang digunakan untuk mencari bahagian tertentu dalam halaman.
Seterusnya, kami akan menulis fungsi untuk mengesahkan sama ada URL itu protokol HTTPS. Fungsi ini akan menggunakan ungkapan biasa untuk memadankan rentetan URL. Berikut ialah kod fungsi pengesahan:
import "regexp" func IsHTTPS(url string) bool { pattern := `^https://[^/:]+(:d*)?(/.*)?$` re := regexp.MustCompile(pattern) return re.MatchString(url) }
Dalam fungsi ini, kami mula-mula mentakrifkan corak ungkapan biasa pattern
yang akan sepadan dengan URL protokol HTTPS. Corak termasuk bahagian berikut:
Seterusnya, kami menggunakan pakej regexp
daripada pustaka standard Go untuk menyusun corak ungkapan biasa dan menyimpannya dalam pembolehubah re
. Kami kemudian menggunakan fungsi MatchString
untuk menguji sama ada rentetan URL masuk sepadan dengan corak. Jika perlawanan berjaya, true
dikembalikan, jika tidak false
dikembalikan.
Kini, kita boleh menggunakan fungsi di atas untuk menguji beberapa alamat URL untuk melihat sama ada ia mematuhi format protokol HTTPS. Berikut ialah beberapa kes ujian:
func main() { testCases := []string{ "https://www.example.com", "https://www.example.com/", "https://www.example.com:8443", "https://www.example.com:8443/", "https://www.example.com/foo/bar.html", "https://www.example.com/foo/bar.html?param=value", } for _, url := range testCases { if IsHTTPS(url) { fmt.Printf("%s is valid HTTPS URL ", url) } else { fmt.Printf("%s is not valid HTTPS URL ", url) } } }
Dalam kes ujian ini, kami mentakrifkan tatasusunan rentetan, setiap rentetan mengandungi alamat URL. Kemudian, kami mengulangi tatasusunan ini, dan untuk setiap alamat URL, kami memanggil fungsi di atas IsHTTPS
untuk menguji sama ada ia berada dalam format protokol HTTPS. Jika ya, kami mengeluarkan mesej yang menunjukkan bahawa alamat itu ialah URL HTTPS yang sah, jika tidak, kami mengeluarkan mesej yang menunjukkan bahawa alamat itu bukan URL HTTPS yang sah.
Apabila kami menjalankan kod di atas, kami akan mendapat output berikut:
https://www.example.com is valid HTTPS URL https://www.example.com/ is valid HTTPS URL https://www.example.com:8443 is valid HTTPS URL https://www.example.com:8443/ is valid HTTPS URL https://www.example.com/foo/bar.html is valid HTTPS URL https://www.example.com/foo/bar.html?param=value is valid HTTPS URL
Semua alamat URL diiktiraf dengan betul sebagai alamat HTTPS yang sah.
Dalam artikel ini, kami membincangkan cara menggunakan ungkapan biasa dalam Golang untuk mengesahkan sama ada alamat URL ialah protokol HTTPS. Kami menulis fungsi IsHTTPS
yang menggunakan corak ungkapan biasa khusus untuk memadankan rentetan URL dan mengembalikan nilai Boolean yang menunjukkan sama ada ia adalah alamat protokol HTTPS. Jika anda perlu mengesahkan jenis alamat URL lain, sila ubah suai corak mengikut keperluan.
Atas ialah kandungan terperinci Bagaimana untuk mengesahkan sama ada alamat URL ialah protokol HTTPS menggunakan ungkapan biasa dalam golang. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!