Junior — Middle
Vai jūs varat izskaidrot, kam paredzēta funkcija context.WithValue Go un kā tā darbojas?
sobes.tech AI
Atbilde no AI
Funkcija context.WithValue Go valodā tiek izmantota, lai izveidotu jaunu kontekstu, kas satur atslēgas-vērtības pāri. Tas ļauj pārsūtīt papildu datus caur izsaukumu ķēdi, nemainot funkciju parakstus.
Tā darbojas šādi: jūs nododat sākotnējo kontekstu, atslēgu un vērtību, un saņemat jaunu kontekstu, no kura varat izvilkt šo vērtību, izmantojot context.Value(key).
Piemērs:
ctx := context.Background()
ctxWithValue := context.WithValue(ctx, "userID", 42)
userID := ctxWithValue.Value("userID")
fmt.Println(userID) // Izvadīs: 42
Ir svarīgi izmantot unikālus atslēgu tipus, lai izvairītos no konfliktiem, piemēram, definējot savu tipu atslēgām.