Foutmelding in verkeerde taal — probleem en oplossing
Probleem In een Nederlandstalig artikel is een foutmelding in het Engels opgenomen: "An error occurred during Api requesting: Too Many Requests: ". Dit veroorzaakt inconsistentie in taalgebruik, verwarring bij gebruikers en kan de professionele uitstraling van de tekst aantasten. Foutmeldingen moeten ook voor eindgebruikers begrijpelijk en lokaal correct zijn.
Correcte Nederlandstalige weergave (directe vervanging)
Er is een fout opgetreden bij een API-verzoek: Te veel verzoeken:
Aanbevelingen voor consistente en bruikbare foutmeldingen
-
Gebruik eenduidige, korte en begrijpelijke formuleringen in de doeltaal (hier: Nederlands).
-
Verberg technische details voor eindgebruikers waar mogelijk; toon alleen wat relevant is en handig voor de gebruiker.
-
Log de volledige technische fout (inclusief raw JSON) voor ontwikkelaars, maar toon een beknopte en gelokaliseerde boodschap in de interface.
-
Bied waar mogelijk vervolgstappen of suggesties (bijv. “probeer het later opnieuw”, “neem contact op met support”).
Voorbeelden van gelokaliseerde foutmeldingen (Nederlands)
-
429 Too Many Requests: Te veel verzoeken. Probeer het over een paar minuten opnieuw.
-
401 Unauthorized: Toegang geweigerd. Log in of controleer uw machtigingen.
-
403 Forbidden: Toegang niet toegestaan. U heeft geen rechten voor deze actie.
-
404 Not Found: Niet gevonden. De opgevraagde pagina of resource bestaat niet.
-
500 Internal Server Error: Interne serverfout. Probeer het later opnieuw of neem contact op met support.
Technische implementatie: API-respons lokaal weergeven (voorbeelden)
1) JavaScript (frontend) — fetch + vertaling en retry-advies
// Voorbeeld: frontend code met lokalisatie van 429
async function callApi(url) {
try {
const res = await fetch(url);
if (res.status === 429) {
// Toon gelokaliseerde boodschap aan gebruiker
// Raw respons loggen voor ontwikkelaars (console of remote logging)
console.log('API-respons (ontwikkelaars):', await res.text());
throw new Error('Te veel verzoeken. Probeer het over een paar minuten opnieuw.');
}
if (!res.ok) {
throw new Error('Er is een fout opgetreden bij het verwerken van uw verzoek.');
}
return await res.json();
} catch (err) {
// toondekst voor UI
return ;
}
}
2) Python (backend) — requests met Retry-After-handleiding
import requests
def call_api(url):
r = requests.get(url)
if r.status_code == 429:
retry_after = r.headers.get('Retry-After')
msg = 'Te veel verzoeken.'
if retry_after:
msg += f' Probeer het over seconden opnieuw.'
# log volledige respons voor analyse
print('API-antwoord (ontwikkelaars):', r.text)
return
elif r.status_code != 200:
return
return r.json()
3) Node.js / Express — mapping van technische fout naar gelokaliseerde boodschap
app.get(‘/data’, async (req, res) => {
try {
const apiResp = await fetch('https://voorbeeld.api/endpoint');
if (apiResp.status === 429) {
const raw = await apiResp.text();
console.error('API-fout (ontwikkelaars):', raw);
return res.status(429).json();
}
// overige afhandeling...
} catch (err) {
console.error(err);
res.status(500).json();
}
});
Automatische detectie van gemengde taal in content
-
Gebruik tekstanalyse en woordlijsten: identificeer in een Nederlandstalige bron ongebruikelijke Engelse woorden of typische Engelse foutzinnen.
-
Regular expressions voor typische Engelse foutpatronen (Too Many Requests, Internal Server Error, Unauthorized).
-
Integratie in CI/CD: voeg een lint-stap toe die content en UI-strings controleert op taalconsistentie.
-
Voor productiesystemen: controleer serverlogs en gebruikersmeldingen op Engelse foutstrings en source files (i18n-keys) die mogelijk onjuist gekoppeld zijn.
Lokalisatiepraktijken (i18n)
-
Gebruik resource-bestanden (bijv. JSON, YAML) per taal in plaats van harde gecodeerde strings in code.
-
Voorbeeld structuur (nl.json):
{
“errors”: {
"too_many_requests": "Te veel verzoeken. Probeer het over een paar minuten opnieuw.",
"unauthorized": "Toegang geweigerd. Log in of controleer uw machtigingen.",
"server_error": "Interne serverfout. Probeer het later opnieuw."
}
}
- In de frontend/backends code altijd i18n.t(‘errors.too_many_requests’) gebruiken.
QA- en redactiestappen
-
Voer een taalkundige review uit op alle gebruikersgerichte teksten.
-
Test de applicatie met verschillende foutscenario’s en controleer of de getoonde meldingen in de juiste taal zijn.
-
Hanteer een fallback-regel: als een foutmelding niet is gelokaliseerd, toon een generieke Nederlandstalige foutmelding in plaats van de ruwe Engelse tekst.
Concluderend
Vervang de Engelse foutmelding door een duidelijke, contextuele Nederlandse boodschap (bijv. “Er is een fout opgetreden bij een API-verzoek: Te veel verzoeken. Probeer het over een paar minuten opnieuw.”). Houd technische details verborgen voor eindgebruikers maar log ze voor ontwikkelaars. Implementeer i18n-structuur, voeg checks toe in CI, en test foutscenario’s om taalconsistentie in alle gebruikersinterfaces te waarborgen.