Generer en lokal klient
Offentlige pakker er ennå ikke publisert for Java, Python eller Node.js. Generer en lokal klient fra den versjonerte offentlige kontrakten med den fastlåste generator-kommandoen som vises nedenfor. En fast generatorversjon gjør kontraktoppdateringer bevisste.
Konfigurer forespørsler
Kjør kall fra en klarert server, les tilgangstokenet fra miljøet, og bruk basisadressen og tidsavbruddene som vises i eksemplene. Plasser aldri tokenet i nettleserkode.
List kjæledyr
Eksemplene for Java, Python og Node.js nedenfor utfører den samme første operasjonen med standardbiblioteker fra plattformen, så de er ikke avhengige av en upublisert pakke.
Håndter feil
Kontroller både svarstatusen og innholdet. Ta vare på forespørselsidentifikatoren når du kontakter kundestøtte, men logg aldri tilgangstokenet. Gjenta en skriveoperasjon eller diettgenerering bare når forespørselen kan gjentas trygt.
Versjon og kilde
Generer klienter fra den offentlige OpenAPI-pakken. Fastsett kontrakt- og generatorversjonene i bygget ditt, slik at oppgraderinger blir gjennomgått og kan gjentas.
Java
curl --fail --silent --show-error https://api.barflab.io/openapi.yaml -o openapi.yaml
docker run --rm -v "$PWD:/local" openapitools/openapi-generator-cli:v7.24.0 generate \
-i /local/openapi.yaml -g java -o /local/generated/barflab-java \
--additional-properties=library=native
Java HTTP
var request = HttpRequest.newBuilder(URI.create(
"https://api.barflab.io/v1/pets"))
.header("Authorization", "Bearer " + System.getenv("BARFLAB_TOKEN"))
.header("Accept", "application/json")
.timeout(Duration.ofSeconds(30))
.GET()
.build();
var response = httpClient.send(request, BodyHandlers.ofString());
Python
curl --fail --silent --show-error https://api.barflab.io/openapi.yaml -o openapi.yaml
docker run --rm -v "$PWD:/local" openapitools/openapi-generator-cli:v7.24.0 generate \
-i /local/openapi.yaml -g python -o /local/generated/barflab-python
Python HTTP
import os
import urllib.request
request = urllib.request.Request(
"https://api.barflab.io/v1/pets",
headers={
"Authorization": f"Bearer {os.environ['BARFLAB_TOKEN']}",
"Accept": "application/json",
},
)
with urllib.request.urlopen(request, timeout=30) as response:
body = response.read()
Node.js
curl --fail --silent --show-error https://api.barflab.io/openapi.yaml -o openapi.yaml
docker run --rm -v "$PWD:/local" openapitools/openapi-generator-cli:v7.24.0 generate \
-i /local/openapi.yaml -g typescript-fetch -o /local/generated/barflab-node
Node.js HTTP
const response = await fetch(
"https://api.barflab.io/v1/pets",
{
headers: {
Authorization: `Bearer ${process.env.BARFLAB_TOKEN}`,
Accept: "application/json",
},
signal: AbortSignal.timeout(30_000),
},
);
const body = await response.json();