refactor: 优化前端网络层

- 优化ApiService,移除冗余代码
- 优化WebSocketClient连接处理
This commit is contained in:
iammm0
2026-01-26 11:54:08 +08:00
parent dae4a176fd
commit 06a616bc83
2 changed files with 2 additions and 23 deletions

View File

@@ -98,21 +98,6 @@ class ApiService(
} }
} }
suspend fun organizeConversation(conversationId: String): Result<Unit> {
return try {
val response = client.post("$BASE_URL/api/conversations/$conversationId/organize") {
contentType(ContentType.Application.Json)
}
if (response.status.isSuccess()) {
Result.success(Unit)
} else {
Result.failure(Exception("整理失败: ${response.status}"))
}
} catch (e: Exception) {
Result.failure(e)
}
}
// ==================== 回忆录相关API ==================== // ==================== 回忆录相关API ====================
suspend fun getBookInfo(): Result<BookDto> { suspend fun getBookInfo(): Result<BookDto> {

View File

@@ -3,9 +3,7 @@ package com.huaga.life_echo.network
import io.ktor.client.* import io.ktor.client.*
import io.ktor.client.engine.okhttp.* import io.ktor.client.engine.okhttp.*
import io.ktor.client.plugins.websocket.* import io.ktor.client.plugins.websocket.*
import io.ktor.client.plugins.contentnegotiation.*
import io.ktor.client.plugins.logging.* import io.ktor.client.plugins.logging.*
import io.ktor.serialization.kotlinx.json.*
import io.ktor.websocket.* import io.ktor.websocket.*
import io.ktor.http.* import io.ktor.http.*
import kotlinx.coroutines.flow.* import kotlinx.coroutines.flow.*
@@ -20,12 +18,8 @@ import android.util.Log
class WebSocketClient { class WebSocketClient {
private val client = HttpClient(OkHttp) { private val client = HttpClient(OkHttp) {
install(WebSockets) install(WebSockets)
install(ContentNegotiation) { // 注意WebSocket不需要ContentNegotiation插件,因为消息是手动序列化的
json(Json { // ContentNegotiation插件会导致尝试序列化WebSocket会话对象引发序列化错误
ignoreUnknownKeys = true
encodeDefaults = false
})
}
install(Logging) { install(Logging) {
level = LogLevel.INFO level = LogLevel.INFO
} }