Rumah > Artikel > pembangunan bahagian belakang > Bagaimana untuk Meluluskan Pasangan Nilai-Kekunci Berbilang dengan Cekap dengan context.WithValue()?
context.WithValue: Menambah Berbilang Pasangan Nilai Kunci
Pakej konteks dalam Go membolehkan pembangun menghantar data khusus permintaan kepada pengendalian permintaan fungsi menggunakan context.WithValue() fungsi. Fungsi ini mencipta konteks baharu, iaitu salinan konteks induk, dengan pasangan nilai kunci yang disediakan.
Pasangan Nilai Berbilang Kunci dalam Konteks
Apabila bekerja dengan berbilang pasangan nilai kunci, anda mempunyai beberapa pilihan:
type Values struct { m map[string]string } func (v Values) Get(key string) string { return v.m[key] }
Menggunakan struct ini, anda boleh menambahnya pada konteks seperti berikut:
v := Values{map[string]string{ "1": "one", "2": "two", }} c := context.WithValue(c, "myvalues", v) fmt.Println(c.Value("myvalues").(Values).Get("2")) // Prints "two"
Pertimbangan Prestasi
Pendekatan terbaik bergantung pada kes penggunaan khusus:
Ingat konteks itu.Konteks tidak boleh diubah, jadi setiap kali anda menambah pasangan nilai kunci baharu, konteks baharu dicipta. Pertimbangkan bilangan pasangan nilai kunci dan keperluan prestasi apabila memilih pendekatan.
Atas ialah kandungan terperinci Bagaimana untuk Meluluskan Pasangan Nilai-Kekunci Berbilang dengan Cekap dengan context.WithValue()?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!