0
http
Sendet eine HTTP-Anfrage
Was die Funktion macht
Die Funktion http()
erlaubt deinem Skript, jede beliebige REST-API aufzurufen – um Daten aus einem externen Dienst abzurufen oder Daten zwischen Ninox-Datenbanken auszutauschen.
Der Zugriff auf eine andere Ninox-Datenbank erfordert einen API-Key.
Wo ausführen
Kontext | Timeout | Warum das wichtig ist |
---|---|---|
Innerhalb von do as server...end |
≈ 20–120 s | Empfohlen – verhindert, dass die Client-UI einfriert, erzwingt ein Sicherheits-Timeout und folgt den Best-Practice-Empfehlungen von Ninox. |
Außerhalb von do as server...end |
Kein Limit (wartet unbegrenzt) | Blockiert die UI, bis die API antwortet – nur mit Vorsicht verwenden. |
Parameter
Name | Typ | Erforderlich | Zweck |
---|---|---|---|
method | String | HTTP-Methode (z. B. "GET" , "POST" ) |
|
url | String | Endpunkt-URL | |
header | JSON | – | HTTP-Header (API-Schlüssel, content-type , …) |
body | JSON | – | Anfragedaten (Payload) |
files | [file] |
– | Dateien zum Hochladen (nur im Server-Kontext) |
Syntax
http(method, url)
http(method, url, header)
http(method, url, header, body)
http(method, url, header, files)
http(method, url, header, body, files)
Rückgabewert
Gibt stets ein JSON-Objekt zurück – entweder die API-Antwort oder eine Fehlermeldung.
Beispiele
1. Alle Tabellen der aktuellen Datenbank auflisten
let url := "https://api.ninoxdb.de/v1/teams/" + teamId() +
"/databases/" + databaseId() + "/tables/";
let apiKey := "Bearer abcd1234-0000-xxxx-zzzz-1a1aa1aaa1a111";
let response := http("GET", url, {
Authorization: apiKey
});
response // JSON-Array mit Tabellen oder Fehlerobjekt
2. Datensätze serverseitig abfragen
do as server
let url := "https://api.ninoxdb.de/v1/teams/" + teamId() +
"/databases/" + databaseId() + "/query";
let apiKey := "Bearer abcd1234-0000-xxxx-zzzz-1a1aa1aaa1a111";
let response := http("POST", url, {
Authorization: apiKey,
"content-type": "application/json"
}, {
query: "select Kunden where Status = 4"
});
response // Treffer oder Fehlerobjekt
end
3. Eine Datei hochladen
do as server
let response := http("POST",
"https://example.com/upload",
{ "content-type": "multipart/form-data" },
null,
[myFile])
end