- Nyomtat
Ez az útmutató segít megérteni a HTTP-csatlakozók teljes képességeit.
Ha egy külső rendszert, például egy MES-t vagy ERP-t szeretne a Tuliphoz csatlakoztatni, akkor HTTP-konnektort kell használnia. A Tulip HTTP-csatlakozók a legtöbb típusú HTTP API-val, köztük a REST és a SOAP API-kkal is képesek kapcsolatot létesíteni.
A HTTP-konnektorok létrehozásának ismertetőjét keresi? Vegyen részt a HTTP-csatlakozók egyetemi tanfolyamon!
A csatlakozó funkciók megértése
Egy HTTP-csatlakozón belül írhat egy sor olyan csatlakozófüggvényt, amelyek előre meghatározott bemenetek felhasználásával futtatják a HTTP-kérelmek általános típusait. A csatlakozófüggvények azok az egyedi műveletek, amelyek az API-t hívják. A Tulip HTTP-csatlakozófüggvények a következő módszereket támogatják:
- GET
- HEAD
- POST
- PUT
- PATCH
- DELETE
és a következő mezők módosításai:
- Hostnév, Port és Path
- Hitelesítés (nincs, Basic Auth, OAuth 2)
- Kérelem fejlécek
- Lekérdezési paraméterek
- Kérelemtest (JSON, URL-kódolt űrlap, XML vagy egyszerű szöveg)
:::(Info) (MEGJEGYZÉS) Ez a választás hatással lesz a Content-Type fejlécre. Ha például JSON-t szeretne küldeni a Plain Text opcióval, akkor a Content-Type "application/json" értéket manuálisan kell a fejlécbe keményen beírnia. :::
A válaszok ezután feldolgozhatók, és az információk kivonhatók a:
- Válaszfejlécek
- Választest (JSON a json-query vagy XML az xpath használatával)
A HTTP-kapcsolók a következő adattípusokat támogatják a kimenetekben:
- Szöveg
- Egész szám
- Float
- Boolean
- Datetime*
- A fenti adattípusokat tartalmazó objektumok
- Táblák a fenti adattípusokkal
*Datetime elemzést támogat:
- Az OData időbélyegek milliszekundumban, 1970. január 1. óta UTC
- 1970. január 1., UTC óta milliszekundumként értelmezett számok
- ISO 8601 dátum karakterláncok
Csatlakozó létrehozása
Kattintson a Csatlakozók oldal jobb felső sarkában a Csatlakozó hozzáadása gombra, majd nevezze el a csatlakozót, és válassza a HTTP lehetőséget.
Ezután megjelenik a Environment lap. Ha több környezetet szeretne beállítani, tekintse meg ezt a külön útmutatót
Ezután, miután kiválasztotta a csatlakozót, válassza a Kapcsolat részleteinek hozzáadása lehetőséget, hogy további részleteket adjon meg a lekérdezni kívánt kiszolgálóról.
Öt lehetőség közül választhat.
Tekintse meg ezt a csatlakozó hosztokról szóló útmutatót.
Host: Csak azt a tartományt adja meg, amelyet le szeretne kérdezni. Ne adja meg a http:// vagy a https:// címet Pl. myaccount.restlet.api.netsuite.com.
Port: Ezt a lekérdezni kívánt szolgáltatásnak kell megadnia. A HTTP-kérések általában a 443-as portot használják.
TLS: Válassza az "Igen" lehetőséget, ha HTTPS-t használ, és a "Nem" lehetőséget, ha csak "HTTP"-t.
Kattintson a Teszt gombra, hogy megnézze, sikeresen tud-e csatlakozni a kiszolgálóhoz, majd kattintson a Mentés gombra.
A csatlakozó duplikálásához vagy törléséhez térjen vissza a csatlakozók oldalra, majd kattintson az adott csatlakozó jobb oldalán lévő három pontra.
Csatlakozó funkció létrehozása
Kattintson az Új funkció hozzáadása gombra a Funkciók lapon egy új funkció létrehozásához.
Ezután megjelenik egy sor lehetőség a funkció szerkesztésére.
Először is adja meg a függvény nevét az oldal bal felső részén.
Ezután kattintson a Funkció bemenetek hozzáadása gombra a bemenetek hozzáadásának megkezdéséhez. Példa:
Ha tesztelni szeretné a HTTP-csatlakozó függvényét, adjon hozzá egy "Tesztértéket" minden bemenethez.
Ezután adjon hozzá egy végpontot az URL végéhez, és válassza ki a HTTP-kérés típusát.
Válassza a Query Parameters (Kérdezési paraméterek ) lehetőséget a kulcs/érték párok hozzáadásának megkezdéséhez. Használja a definiált bemeneteket az Érték mezőben.
Adjon hozzá egy $-t a bemenet neve előtt és után, például ha a bemenet neve "város_név", írja be a$city_name$
.
Válaszok kezelése
Miután elégedett a bemenetekkel és kimenetekkel, válassza a jobb felső sarokban a Test lehetőséget egy minta válasz létrehozásához.
A Teszteredmények szakaszban egy JSON vagy XML választ fog látni. Most már ennek a válasznak a részeit leképezheti a kimenetekhez, majd felhasználhatja őket az alkalmazásokban.
A JSON-kivonatok a json-query szintaxist használják. A szintaxis teszteléséhez használja ezt az online eszközt.
Az XML-kivonatok az XPATH szintaxist használják.
Ennek két módja van:
- Kattintson a válasz testében lévő tulajdonságokra, hogy azokat kimenetekhez rendelje hozzá.
- Kézzel adja meg az elérési utat a json-query használatával.
Itt látható, hogyan adhatja meg a kivonókat mutogatással és kattintással:
Ha a json-query-t szeretné használni, adjon hozzá néhány kimenetet, hogy a válasz tartalmát le tudja képezni a Tulip-hoz.
Ezután minden kimenet mellett meg kell adnia az "extractors"-t, hogy jelezze a válasz testéből azokat az adatokat, amelyeket tárolni szeretne.
Íme egy példa a json-kérdéssel: Tegyük fel, hogy ír egy GET-kérést, amely egy objektumokból álló tömböt ad vissza. A tömb első objektumának name tulajdonságának értékét szeretné visszaadni.
Ezt írnád az útvonal mezőbe:
0.name
A válasz fejlécek és sütik szakaszából is tárolhat értékeket.
A fenti szakaszhoz hasonlóan a Kimenet szakaszban is meg kell adnia egy adott kimenetet. Ezután kattintson egy mintaválasz egy részére, vagy használja a json-query-t, hogy elérje a megfelelő tulajdonságot a HTTP-válaszban lévő JSON-ból.
Íme egy példa, ahol a "csrf_token" nevű kimenet tárolja az "x-csrf-token" nevű értéket a fejlécben lévő tulajdonságból.
A kimenetek egy objektum tulajdonságaként kerülnek tárolásra, amikor egy alkalmazással megosztásra kerülnek. Ekkor az objektumot egy alkalmazásban egy változóban kell tárolni. További részletekért lásd ezt az útmutatót a csatlakozó kimenetek alkalmazással való használatáról.
RegEx használata a kimenetek módosításához
A RegEx segítségével a válaszból származó szöveges értékeket is finomíthatja. Ehhez adja hozzá az alábbi függvények egyikét a Path mezőhöz, hogy az értéket egy reguláris kifejezésen keresztül adja át:
:regexp()
A stringen belüli több részlánc rögzítéséhez-
:regexpGroup()
Példák:
0.name:regexp(^N) 0.name:regexpGroup(^\w + (w+))
A RegEx group használatával egy nagyobb karakterláncon belül egyetlen csoportot rögzíthetünk. Ehhez tegyen egy vesszőt a RegEx karakterlánc végére, és adja hozzá az adott csoport számát a karakterláncon belül.
parts[0].inputs:regexpGroup(^\w\w\s(\w\w)\s(\w\w)\s(\w\w),2)
Vagy használhatja egy adott elem kiválasztására egy tömbben, amely megfelel egy szabálynak. Például az első olyan objektumot, amelynek e-mail értéke n-nel kezdődik.
.[email:regexp(^N)]
A RegExr-t ajánljuk a RegEx teszteléséhez. A Tulip a JavaScript (ECMA) RegEx motort használja.
Objektumok és tömbök kezelése a kimenetekben
A Tulip támogatja mind az objektumokat, mind a tömböket a JSON kimeneten belül. Az alábbiakban bemutatjuk, hogyan használhatja mindkettőt:
Objektumok
A JSON kimenet objektumként való formázásához először hozzon létre egy objektumot a Kimenetek szakaszban, majd adja meg a kivonatolót.
A fenti példában az objektum neve "singleObj". A JSON kimenet egy objektumokból álló tömb, így a 0 indexű objektumot választja ki.
Ezután kezdje el hozzáadni az egyes kulcs/érték pároknak megfelelő kimeneteket, amelyeket tárolni szeretne. A kulcs/érték párokat a + gombbal adhatja hozzá.
A fenti példában a singleObj objektumon belül két mező van:
- userID, amely a userID tulajdonságra hivatkozik, és egy egész szám.
- id, amely az id tulajdonságra hivatkozik, és egy egész szám.
Ebben az esetben a kivonatolónak nem kell "0."-val kezdenie, mert automatikusan a 0 indexű objektumra hivatkozik.
Itt van, hogy néz ki a JSON kimenet, a referencia kedvéért:
Objektumok tömbjei
Objektumok tömbjének visszaadásához válassza a Kimenet szakaszon belül az Értékek listája és az Objektumok lehetőséget.
A JSON-kimenetben valószínűleg a teljes tömböt kell visszaadnia a gyökérszinten.
Ehhez adjon meg egy "."-t a kivonatolóhoz:
Ezután a fenti objektum-kivonatolóhoz hasonlóan kezdje el hozzáadni az egyes tulajdonságokat, amelyeket el szeretne küldeni az alkalmazásnak.
Ez a tömb minden egyes objektumához visszaadná a userId-t és az id-t. Munkáját a teszteredmények Kimenetek szakaszában ellenőrizheti:
Egy adattípusú tömbök
Képzeljük el, hogy egy visszaadott értékeket tartalmazó tömb minden objektumából egy boolean értéket szeretne kapni.
Ehhez hozzon létre egy kimenetet egy Booleans tömbhöz. Ezután adja meg azt a tulajdonságot, amely az adott boolean érték tárolására szolgál minden objektumban.
A fenti példában a kimenet neve "completed", és tartalmazza a tömb minden "completed" tulajdonságának értékét, ahogyan azt a kivonatoló jelzi.
Így nézne ki a kimenet:
Korábbi integrációk
A Tulip számos szoftverrendszerrel integrálható. Íme néhány példa a Tulipba a múltban integrált rendszerekből:
További olvasnivalók
- HTTP-konnektor funkció létrehozása és konfigurálása
- A HTTP-konnektor kimeneteinek formázása
- HTTP-konnektorok használata alkalmazásokban
Megtalálta, amit keresett?
A community.tulip.co oldalon is megteheti, hogy felteszi kérdését, vagy megnézheti, hogy mások is szembesültek-e hasonló kérdéssel!