قالب وردپرس درنا توس
Home / Apple / Server-Side Kotlin with Ktor | raywenderlich.com

Server-Side Kotlin with Ktor | raywenderlich.com



Getting Started with Ktor

Let's introduce Server-Side Kotlin and Ktor, discuss our sample project, and review all that you'll be learning in the course.


You'll create a Ktor app from scratch in IntelliJ IDEA and add simple Hello world routes to the app.


An order to keep your code organized, you'll refact the routes you've written so that each route has its own source file


Test your knowledge about building app routes in Ktor by adding and about route to the web app, then see a solution.


Add a repository interface and in-memory repository implementation in order to save model Emoji Phrases in requests to the app.

Create a POST endpoint to which you can send new EmojiPhrases, then test the endpoint using curl and a REST client app.


Introduce FreeMarker templating into the app and create a simple HTML page for showing your EmojiPhrases.


Review all that you've done in Part 1 of the course, and take a look ahead at where we'll be in Part 2 and beyond


Beautification and Type-Safe Routing

See what we'll be covering in Part 2: adding basic authentication, using Bootstrap components for styling, and adding type-safe routing.

Install the Ktor Authentication feature into your app and add Basic Authentication to the POST route and GET route for phrases.


Build an HTML form to let users post new EmojiPhrases directly from the app instead of using other REST clients


Get an introduction to the Bootstrap open-source front-end framework, and review the Bootstrap code that has been added to the app FreeMarker templates.


Setup static content in your Ktor web ap p, and complete the process of adding Bootstrap to the Home and Phrases pages of the app.


Test your knowledge of FreeMarker and the use of Bootstrap by completing the EmojiPhrases app About page, then see a solution. 19659032] 15

Install the Ktor Locations feature in the app, then use the feature to switch to using type-safe routing.


Review all that you've done in Part 2 of the course, and take a look ahead at where we'll be in Part 3 and beyond


Persistence and Sessions

See what we will be covering in Part 3 of the course, adding true data persistence using Exposed and PostgreSQL and building in real authentication via sessions


Add the Exposed SQL library framework from JetBrains into the app, and use it with an in-memory H2 database and with database connection pooling.


Learn about user authentication via cookies and sessions, understand the purpose of password hashing, and start to add user sessions in the course app.


Continue adding sessions to the course app by creating the code for the sign up and sign in pages of the app.


Finish adding sessions to the app by checking for active sessions on the different pages of the app, and verifying a session when users post new data


Review all that we've done in Part 3 of the course and take a look at where we'll be in Parts 4 and 5.


JWT Auth and the API

See what we will be covering in Part 4 of the course, adding JSON Web Tokens for the API authentication and completing a phrases API for the app.


Create a GET endpoint in the API from which API users can request the Emoji Phrases stored in the app repository.

Create a POST endpoint in the API to which API users can send new EmojiPhrases, and adding data in the Postman REST client


Deployment

See what we will be covering in Part 5 of the course, deploying our Ktor app to Heroku, creating a Docker image, and running the Docker image in a container.


Add some build flags to support Dockerizing your Ktor app, then write a Dockerfile and use it to build a docker image of the app.


Run your Ktor app Docker image in a container, including connecting the a pp container to a docker container running PostgreSQL


Review all that you've done to build a deployable Ktor web app and API, both backed by a PostgreSQL database, and take a look at where to go from here .



Source link