RestApi

Dáta sem, dáta tam.

Nástroje používateľa

Nástoje správy stránok


kotlin-ktor

Rozdiely

Tu môžete vidieť rozdiely medzi vybranou verziou a aktuálnou verziou danej stránky.

Odkaz na tento prehľad zmien

Obojstranná predošlá revíziaPredchádzajúca revízia
Nasledujúca revízia
Predchádzajúca revízia
kotlin-ktor [2025/11/18 16:58] – [Server] attilajancikkotlin-ktor [2025/11/24 11:25] (aktuálne) – [Vytvorenie projektu] attilajancik
Riadok 8: Riadok 8:
  
 Projekt sólo servera s REST API je možné vygenerovať, upraviť a spustiť veľmi jednoducho a použiť napríklad pre testovací ''Mock server'', ktorý pobeží na desktope, alebo mobilných ARM zariadeniach (tablet, telefón, ...). Už pri vygenerovaní projektu, build-nutí a spustení je k dispozícii základný programový a funkčný server. Projekt sólo servera s REST API je možné vygenerovať, upraviť a spustiť veľmi jednoducho a použiť napríklad pre testovací ''Mock server'', ktorý pobeží na desktope, alebo mobilných ARM zariadeniach (tablet, telefón, ...). Už pri vygenerovaní projektu, build-nutí a spustení je k dispozícii základný programový a funkčný server.
 +
 +> pre JVM (desktopy) sa používa generátor: [[https://start.ktor.io/settings|New Ktor Project]] a ďalej postupovať podľa [[https://www.restapi.sk/doku.php?id=kotlin-ktor#vytvorenie_projektu|popisu nižšie]]
 +> pre Multiplatform využi IntelliJ Idea - nový MP projekt s Ktor
  
 Server pri príjme požiadavky zabezpečuje Smerovanie (Routing) a podrobné Trasy (Route) k cieľom, Príklad čiastočne funkčného kódu: Server pri príjme požiadavky zabezpečuje Smerovanie (Routing) a podrobné Trasy (Route) k cieľom, Príklad čiastočne funkčného kódu:
Riadok 92: Riadok 95:
 Vytvorenie projektu: Vytvorenie projektu:
 <code> <code>
 +mkdir ~/MyKtorProjects
 +cd ~/MyKtorProjects
 +brew upgrade ktor
 ktor new ktor new
 +cd <ktorSample>
 +chmod +x ./gradlew
 +./gradlew build
 +./gradlew run
 </code> </code>
 +Pre výber doplnkov použi šípky, tabelátor a enter. Vytvorenie : Ctrl+G
  
 === aktuálna IP adresa PC === === aktuálna IP adresa PC ===
Riadok 107: Riadok 118:
 ==== Testovanie projektu ==== ==== Testovanie projektu ====
  
-> KtorIO : [[https://ktor.io/docs/server-create-a-new-project.html#write-an-integration-test|Integračný test]] +> KtorIo : [[https://ktor.io/docs/server-create-a-new-project.html#write-an-integration-test|Integračný test]] 
-> KtorIO : [[https://ktor.io/docs/server-requests-and-responses.html#add-unit-tests|Jednotkové testy]]+> KtorIo : [[https://ktor.io/docs/server-requests-and-responses.html#add-unit-tests|Jednotkové testy]]
  
 Pri testovaní je vhdoné vytvoriť ''@Test'' funkcie pre všetky trasy. Test beží v oddelenom priestore od servera. Pre test je nutné vytvoriť zložky ''test/kotlin'' v ''src'' (vedľa ''main''). Pri testovaní je vhdoné vytvoriť ''@Test'' funkcie pre všetky trasy. Test beží v oddelenom priestore od servera. Pre test je nutné vytvoriť zložky ''test/kotlin'' v ''src'' (vedľa ''main'').
Riadok 125: Riadok 136:
  
   * **Content Negotiation** - skúma typ obsahu //request//, aby poskytol správny //response//. Klient HTTP indikuje typ obsahu v hlavičke kľúčom ''Accept'' (jeden či viac typov, napríklad: text/html, application/xhtml+xml, application/xml;q=0.9, image/avif, image/webp,image/apng, */*;q=0.8, application/signed-exchange;v=b3;q=0.7).   * **Content Negotiation** - skúma typ obsahu //request//, aby poskytol správny //response//. Klient HTTP indikuje typ obsahu v hlavičke kľúčom ''Accept'' (jeden či viac typov, napríklad: text/html, application/xhtml+xml, application/xml;q=0.9, image/avif, image/webp,image/apng, */*;q=0.8, application/signed-exchange;v=b3;q=0.7).
 +
 +=== Testovanie projektu ===
 +
 +> KtorIo : [[https://ktor.io/docs/server-create-restful-apis.html#create-unit-tests|trasy pomocou klienta Ktor]] a JUnit
 +> KtorIo : [[https://ktor.io/docs/server-create-restful-apis.html#unit-tests-via-jsonpath|testy pomocou JsonPath]]
 +
 +==== Web stránka pomocou Kotlin/Ktor ====
 +
 +> KtorIo : [[https://ktor.io/docs/server-create-website.html|interaktívna web stránka]] s Ktor a Thymeleaf
 +
 +
kotlin-ktor.1763481531.txt.gz · Posledná úprava: od attilajancik