Watch-IP gebruiken met JavaScript en TypeScript
@digitload/watch-ip-sdk (npm, v0.1.1) wrapt GET /v1/geo in een kleine client met TypeScript-typen voor elk antwoordveld en zonder runtime-afhankelijkheden.
Installeren
Vereist Node.js 18+ of elke moderne browser — beide bieden de globale fetch waarop dit pakket is gebouwd.
npm
npm install @digitload/watch-ip-sdkSnel starten
Maak een client aan met je publiceerbare sleutel en roep getGeo() aan. De teruggegeven GeoResponse is volledig getypeerd; elk veld behalve ip en isEUCountry is nullable, dus controleer een veld voordat je het rendert.
TypeScript
import { WatchIP } from "@digitload/watch-ip-sdk";
const client = new WatchIP("wip_pub_xxxxxxxx");
const geo = await client.getGeo();
console.log(geo.country, geo.city, geo.timezone);Foutafhandeling en timeouts
Elke mislukking — een geweigerd verzoek (ongeldige sleutel, niet-toegestane origin, rate limit) of een netwerkfout — gooit een WatchIPError met een status en een stabiele code. Er is geen ingebouwde timeout; geef het signal van een AbortController mee om een traag verzoek zelf te annuleren.
TypeScript
import { WatchIP, WatchIPError } from "@digitload/watch-ip-sdk";
const client = new WatchIP("wip_pub_xxxxxxxx");
const controller = new AbortController();
setTimeout(() => controller.abort(), 5000);
try {
const geo = await client.getGeo({ signal: controller.signal });
} catch (err) {
if (err instanceof WatchIPError) {
console.error(err.code, err.status, err.message);
}
}Optionele velden
Geef include: ["hostname"] mee om een reverse-DNS-opzoeking voor het verbindende IP toe te voegen. Dit is opt-in omdat het een extra netwerk-hop toevoegt, dus vraag het alleen op als je het veld ook gebruikt.
TypeScript
const geo = await client.getGeo({ include: ["hostname"] });Wat deze SDK niet dekt
Dit pakket roept alleen GET /v1/geo aan. Het heeft geen methoden voor IP-lookup, e-mailvalidatie of risicocontroles — dat zijn server-naar-server-endpoints die met een geheime sleutel worden geauthenticeerd, niet de publiceerbare sleutel waar deze SDK op is gebouwd. Roep ze rechtstreeks over HTTP aan; zie de referentie voor IP-lookup en de authenticatiehandleiding.
Gerelateerde pagina's
- JavaScript-handleidingBezoekerslocatie opvragen vanuit browser-JavaScript.
- React-handleidingBezoekerslocatie toevoegen aan een React-component.
- GET /v1/geo-referentieVolledige veldreferentie voor het bezoekersgeolocatie-endpoint.
- AuthenticatiePubliceerbare versus geheime sleutels, origin-binding en rate limits.