Junior — Middle
Welke informatie mag via de context in de app worden doorgegeven?
sobes.tech AI
Antwoord van AI
In Go worden doorgaans informatie die verband houdt met het beheer van de levenscyclus van een verzoek of operatie doorgegeven via de context.Context, bijvoorbeeld:
- Het annuleren van de operatie (via het
Done()-kanaal). - Deadlines en time-outs (via
Deadline()). - Waarden die gedurende de hele keten van oproepen nodig zijn, zoals verzoek-ID's, authenticatietokens, metadata.
Belangrijk: plaats geen grote objecten, toestanden of gegevens die niet gerelateerd zijn aan het beheer van het verzoek in de context, om het doel niet te schaden en geheugenlekken te voorkomen.
Voorbeeld van het doorgeven van een waarde via de context:
ctx := context.WithValue(context.Background(), "requestID", "12345")
requestID := ctx.Value("requestID")