Helyi kliens létrehozása
A Java, Python és Node.js nyilvános csomagjai még nem jelentek meg. Készítsen helyi klienst a verziózott nyilvános szerződésből az alább bemutatott rögzített generátorparanccsal. A generátor verziójának rögzítése tudatossá teszi a szerződés frissítéseit.
Kérések beállítása
Megbízható szerverről indítsa a hívásokat, a hozzáférési tokent a környezetből olvassa be, és használja a példákban megadott alapcímet és időkorlátokat. Soha ne helyezze a tokent böngészőkódba.
Kedvencek listázása
Az alábbi Java-, Python- és Node.js-példák ugyanazt az első műveletet hajtják végre a platform szabványos könyvtáraival, ezért nincs szükségük ki nem adott csomagra.
Hibák kezelése
Ellenőrizze a válasz állapotát és törzsét is. Támogatási kapcsolatfelvételkor őrizze meg a kérés azonosítóját, de a hozzáférési tokent soha ne írja naplóba. Írási műveletet vagy étrendkészítést csak akkor ismételjen meg, ha a kérés biztonságosan megismételhető.
Verzió és forrás
A klienseket a nyilvános OpenAPI-csomagból állítsa elő. A szerződés és a generátor verzióját rögzítse a buildben, hogy a frissítések ellenőrizhetők és megismételhetők legyenek.
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();