From be5ff961252058ff2db27ea2278491727447d45b Mon Sep 17 00:00:00 2001 From: iguigui Date: Wed, 1 Jun 2022 20:54:50 +0800 Subject: [PATCH] =?UTF-8?q?feat.=E5=A2=9E=E5=8A=A0getImage=E6=8E=A5?= =?UTF-8?q?=E5=8F=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/Java/Maaj/Readme.md | 2 +- .../src/main/java/com/iguigui/maaj/dto/request.kt | 7 +++++++ .../java/com/iguigui/maaj/routing/HttpRouting.kt | 14 ++++++++++++++ .../java/com/iguigui/maaj/service/MaaService.kt | 4 ++++ 4 files changed, 26 insertions(+), 1 deletion(-) diff --git a/src/Java/Maaj/Readme.md b/src/Java/Maaj/Readme.md index 2440f9b007..8577eca5fb 100644 --- a/src/Java/Maaj/Readme.md +++ b/src/Java/Maaj/Readme.md @@ -1,6 +1,6 @@ # Maa-HTTP接口实现 -本项目为通过JNA(Java-Native-Access)调用Maa核心实现的HTTP+WebSocket接口实现. +基于JNA(Java-Native-Access)调用Maa核心的HTTP+WebSocket接口实现. ## 接口实现情况 diff --git a/src/Java/Maaj/src/main/java/com/iguigui/maaj/dto/request.kt b/src/Java/Maaj/src/main/java/com/iguigui/maaj/dto/request.kt index 24127bdddd..7130fbc41b 100644 --- a/src/Java/Maaj/src/main/java/com/iguigui/maaj/dto/request.kt +++ b/src/Java/Maaj/src/main/java/com/iguigui/maaj/dto/request.kt @@ -161,6 +161,13 @@ data class DestroyRequest( val id: String, ) + +@Serializable +data class GetImage( + @SerialName("id") + val id: String, +) + @SerialName("connect") @Serializable data class WsRequest( diff --git a/src/Java/Maaj/src/main/java/com/iguigui/maaj/routing/HttpRouting.kt b/src/Java/Maaj/src/main/java/com/iguigui/maaj/routing/HttpRouting.kt index fe3e5baaf7..ed9502f7e7 100644 --- a/src/Java/Maaj/src/main/java/com/iguigui/maaj/routing/HttpRouting.kt +++ b/src/Java/Maaj/src/main/java/com/iguigui/maaj/routing/HttpRouting.kt @@ -7,6 +7,7 @@ import io.ktor.server.application.* import io.ktor.server.request.* import io.ktor.server.response.* import io.ktor.server.routing.* +import io.ktor.utils.io.* import kotlinx.serialization.json.jsonObject @@ -63,6 +64,19 @@ fun Application.httpRouting() { val list = MaaService.listInstance() call.respond(ListInstanceResponse(list).wapperToHttpResponse()) } + get("/getImage") { + val id = call.request.queryParameters["id"] + id?.let { + + MaaService.getImage(it) + } + call.response.headers + //todo + } + post("/listInstance") { + val list = MaaService.listInstance() + call.respond(ListInstanceResponse(list).wapperToHttpResponse()) + } } } } diff --git a/src/Java/Maaj/src/main/java/com/iguigui/maaj/service/MaaService.kt b/src/Java/Maaj/src/main/java/com/iguigui/maaj/service/MaaService.kt index 16645b345c..9e8d45ef1a 100644 --- a/src/Java/Maaj/src/main/java/com/iguigui/maaj/service/MaaService.kt +++ b/src/Java/Maaj/src/main/java/com/iguigui/maaj/service/MaaService.kt @@ -95,4 +95,8 @@ object MaaService { this.wsConnection -= connection } + fun getImage(id: String) : ByteArray? { + return instancePool[id]?.getImage() + } + }