API’s · SDK’s
API-clients en SDK’s configureren
Houd basis-URL’s buiten de code, laat ze naar de echte dienst wijzen en voeg een controle toe die voorkomt dat voorbeeldadressen in productie belanden.
Gids · Documentatie
Documentatie, tutorials en tests hebben adressen, nummers en namen nodig die echt lijken maar nooit iemand bereiken. Voor de meeste soorten waarden bestaat een gereserveerd bereik. Deze gids zet ze op een rij, telkens met de bron, zodat voorbeelden onschadelijk blijven als iemand ze kopieert.
Voorbeelden worden gekopieerd: naar code, configuratiebestanden, tests en andere documentatie. Een waarde die verzonnen lijkt maar van iemand is, stuurt dat verkeer, die e-mails of die telefoontjes naar een echte partij. example-petstore.com is daar een voorbeeld van: een verzonnen naam uit de documentatie van Google die iedereen kon registreren, en die nog altijd verzoeken ontvangt. Gereserveerde waarden worden gegarandeerd nooit uitgegeven, zodat een gekopieerd voorbeeld onschadelijk mislukt.
Gebruik voor websites, API’s en e-mailadressen in voorbeelden example.com, example.net of example.org en hun subdomeinen, zoals api.example.com en user@example.com. Voor testomgevingen, namen die nooit mogen resolven en lokale netwerken zijn er .test, .invalid, .localhost, home.arpa en .internal.
Waar elke gereserveerde naam voor dient, en waarom lookalikes zoals example-petstore.com niet veilig zijn: Voorbeelddomeinen
| Soort | Gereserveerd voor documentatie | Bron |
|---|---|---|
| IPv4 | 192.0.2.0/24 (TEST-NET-1), 198.51.100.0/24 (TEST-NET-2), 203.0.113.0/24 (TEST-NET-3) | RFC 5737 |
| IPv6 | 2001:db8::/32 | RFC 3849 |
| IPv6, grotere netwerken | 3fff::/20 | RFC 9637 (2024) |
# Een client, een server en een proxy in een voorbeeld
client 192.0.2.10 2001:db8::10
server 198.51.100.20 2001:db8:1::20
proxy 203.0.113.30 2001:db8:2::30
De drie IPv4-blokken geven een voorbeeld drie aparte “netwerken”, wat helpt bij uitleg over routering of firewalls.
3fff::/20 bestaat omdat 2001:db8::/32 te klein is om realistische toewijzingen voor grote
providers te laten zien.
Voor BGP-voorbeelden: 64496–64511 (16-bit) en 65536–65551 (32-bit),
door RFC 5398 gereserveerd voor documentatie. AS-nummers voor privégebruik zijn bedoeld voor echte netwerken, niet voor
voorbeelden.
00-00-5E-00-53-00 tot en met 00-00-5E-00-53-FF (in de meeste tools geschreven als
00:00:5e:00:53:00) zijn door RFC 9542 (de opvolger van RFC 7042) gereserveerd voor documentatie.
Een wereldwijd bereik bestaat niet; verschillende landen reserveren hun eigen nummers voor fictie en voorbeelden:
555-0100 tot en met 555-0199, met elk netnummer,
zoals +1 202 555 0143.07700 900000 tot en met 07700 900999,
Londen 020 7946 0000 tot en met 020 7946 0999, en 01632 960000 tot en met
01632 960999 zonder een bepaalde regio.Voor andere landen kijk je bij de telecomtoezichthouder. Bestaat er geen bereik, gebruik dan een voorbeeldwaarde die niet
te bellen is, zoals +31 6 XXXX XXXX, in plaats van cijfers die alleen willekeurig lijken.
Betaalproviders publiceren testkaartnummers die alleen in hun testmodus werken, zoals
4242 4242 4242 4242 van Stripe, met elke vervaldatum in de toekomst en elke CVC. Gebruik de nummers van de
provider waarmee je koppelt; testnummers van de ene provider worden door een andere niet geaccepteerd. Gebruik nooit een
echt kaartnummer, ook je eigen niet, in documentatie, fixtures of screenshots.
10.0.0.0/8 of 192.168.0.0/16 in openbare
documentatie: die bestaan in het eigen netwerk van de lezer, dus een gekopieerd voorbeeld kan daar een echt apparaat
bereiken.YOUR_API_KEY of
sk_test_…, nooit een sleutel die ooit geldig was.