[[oktatas:web:rest_api|< REST API]] ====== Insomnia ====== * **Szerző:** Sallai András * Copyright (c) Sallai András, 2022, 2023 * Licenc: [[https://creativecommons.org/licenses/by-sa/4.0/|CC Attribution-Share Alike 4.0 International]] * Web: https://szit.hu ===== Az Insomnia ===== Az Insomnia API tervezését és tesztelését, dokumentálást lehetővé tevő GUI program. ===== Weboldal ===== * https://insomnia.rest/ Letöltés: * https://insomnia.rest/download ===== Első lépések ===== Az Insomnia első indulásakor egy "Dashboard" nevű felület jelenik meg. Egy Dashboard egy projekthez tartozik. Projektet a bal felső sarokban lehet létrehozni. A Dashboardon belül a jobb felső sarokban egy "Create" nevű gomb van. Itt két lehetőségünk van: * Lekérdezés gyűjtemény létrehozása * Dokumentáció létrehozása ===== Telepítés Windowson ===== Letölthetjük a weboldalról a telepítőt; a telepítéshez nem szükséges rendszergazdai jog. Telepítés chocolatey csomagkezelővel: choco install insomnia-rest-api-client ===== Telepítés Debian GNU/Linuxon ===== Látogassuk meg a letöltésoldalt: * https://insomnia.rest/download Érdemes a "See all downloads" lehetőséget (apró betűvel) választani. Debian GNU/Linuxon a .deb csomagnak teljesíthetetlen függőségei vannak, ezért válasszuk inkább a .tar.gz kiterjesztésű fájlt. Csomagoljuk ki az Insomnia-t az /opt könyvtárba. Kapunk egy ehhez hasonló könyvtárat: Insomnia.Core-2021.5.3 Újabb verzió esetén a 2021.5.3 helyén más értékek állnak. A könyvtárban találunk egy insomnia nevű indítható programot. A programot, érdemes szimbolikusan linkelni a következő könyvtárba: /usr/local/bin Példa a linkelésre, a fenti könyvtárnév mellett: ln -s /opt/Insomnia.Core-2021.5.3/insomnia /usr/local/bin/insomnia Így parancssorból bárhonnan indítható. ===== Használat ===== ==== Request Collection ==== A Request Collectionon belül mappákat hozhatunk létre, azon belül kéréseket: Request Collection `-Folder `-Request Minden végpont számára érdemes létrehozni egy könyvtárat, azon belül minden metódushoz egy kérést (Request). {{:oktatas:web:rest:folder_request.png|}} ==== Kép feltöltés ==== * Body > Multipart ===== Környezeti változók ===== Aktiváljuk a "No Environment" legördülő listadobozt. Ott válasszuk: * Manage Environments Ctrl+E Vegyük fel, például: { "host": "localhost:8000" } Zárjuk be. Az URL helyet ezek után el kezdjük írni: _. Ezt követően felkínálja a beírt változókat. ===== Dokumentum készítés ===== Három fület találunk: * DESIGN DEBUG TEST A DESIGN fülön: openapi: 3.0.0 info: title: Dolgozók kezelése version: '1.0' servers: - url: http://localhost:8000 paths: /employees: get: summary: read employees operationId: fetchEmployees responses: default: description: Megérkezett dolgozók Amikor az **operationId** számára új értéket állítunk be a DEBUG fülön létrejön egy új bejegyzés. A TEST fülön készíthetünk teszteket a kérésekhez. Az elkészült dokumentum használja a környezetet, ezért a szerver változtatása esetén szükség lehet a **OpenAPI env** aktiválására. ===== Az inso ===== Telepítés: * https://docs.insomnia.rest/inso-cli/install (2023) Ellenőrzés: ./inso --version ===== Linkek ===== * [[https://www.digitalocean.com/community/tutorials/how-to-create-documentation-for-your-rest-api-with-insomnia|https://www.digitalocean.com/]] (2022)