diff --git a/src/main/kotlin/com/ray650128/Application.kt b/src/main/kotlin/com/ray650128/Application.kt index abc0b34..dc50a6b 100644 --- a/src/main/kotlin/com/ray650128/Application.kt +++ b/src/main/kotlin/com/ray650128/Application.kt @@ -12,6 +12,5 @@ fun Application.module() { DatabaseFactory.init() DatabaseFactory.createTable() configureRouting() - configureSerialization() configureSecurity() } diff --git a/src/main/kotlin/com/ray650128/model/LoginBody.kt b/src/main/kotlin/com/ray650128/model/LoginBody.kt new file mode 100644 index 0000000..a5a3c2f --- /dev/null +++ b/src/main/kotlin/com/ray650128/model/LoginBody.kt @@ -0,0 +1,6 @@ +package com.ray650128.model + +data class LoginBody( + val account: String, + val password: String +) diff --git a/src/main/kotlin/com/ray650128/model/User.kt b/src/main/kotlin/com/ray650128/model/User.kt index 0f2026a..f1bae37 100644 --- a/src/main/kotlin/com/ray650128/model/User.kt +++ b/src/main/kotlin/com/ray650128/model/User.kt @@ -1,11 +1,11 @@ package com.ray650128.model data class User( - var id: Long, - var name: String, + var id: Long = -1, + var name: String = "", var account: String, var password: String, - var token: String, - var createTime: Long, - var updateTime: Long + var token: String = "", + var createTime: Long = -1, + var updateTime: Long = -1 ) diff --git a/src/main/kotlin/com/ray650128/plugins/Routing.kt b/src/main/kotlin/com/ray650128/plugins/Routing.kt index 5bc993e..744e14a 100644 --- a/src/main/kotlin/com/ray650128/plugins/Routing.kt +++ b/src/main/kotlin/com/ray650128/plugins/Routing.kt @@ -1,16 +1,41 @@ package com.ray650128.plugins +import com.ray650128.model.LoginBody +import com.ray650128.model.User +import com.ray650128.repository.UserRepository import io.ktor.server.routing.* import io.ktor.http.* +import io.ktor.serialization.gson.* import io.ktor.server.application.* +import io.ktor.server.plugins.contentnegotiation.* import io.ktor.server.response.* import io.ktor.server.request.* fun Application.configureRouting() { + val userRepository = UserRepository() + + install(ContentNegotiation) { + gson { + } + } + routing { get("/") { call.respondText("Hello World!") } + + post("/api/v1/register") { + val body = call.receive() + val data = User( + account = body.account, + password = body.password + ) + userRepository.add(data) + call.respond( + status = HttpStatusCode.OK, + message = mapOf("token" to "aaaaaaa") + ) + } } } diff --git a/src/main/kotlin/com/ray650128/plugins/Serialization.kt b/src/main/kotlin/com/ray650128/plugins/Serialization.kt deleted file mode 100644 index 45afd91..0000000 --- a/src/main/kotlin/com/ray650128/plugins/Serialization.kt +++ /dev/null @@ -1,21 +0,0 @@ -package com.ray650128.plugins - -import io.ktor.serialization.gson.* -import io.ktor.server.plugins.contentnegotiation.* -import io.ktor.server.application.* -import io.ktor.server.response.* -import io.ktor.server.request.* -import io.ktor.server.routing.* - -fun Application.configureSerialization() { - install(ContentNegotiation) { - gson { - } - } - - routing { - get("/json/gson") { - call.respond(mapOf("hello" to "world")) - } - } -}