gpt4 book ai didi

ktor - 如何使用 Ktor 和 kotlinx 序列化获取 HttpCall 的状态码

转载 作者:行者123 更新时间:2023-12-03 14:53:41 30 4
gpt4 key购买 nike

我想弄清楚如何使用 Ktor 检查 http 请求的 http 状态代码

我有一个像这样的简单 GET 请求,其中包含一个 HttpResponseObject 保存服务器返回的数据以及我控制的任何服务器端错误

val response:HttpResponseObject<MyObject> = client.get<HttpResponseObject<MyObject>>(url)

现在我还需要能够检查的是是否存在服务器抛出的未处理异常或身份验证异常。在这些情况下,服务器不会返回任何内容,并且会返回状态代码 500 或 401 错误。

我看到文档有你可以用这样的东西获得完整的http响应
val response:HttpResponse client.get(url)

但是如何丢失我的序列化数据回来,我找不到任何关于如何从 HttpResponse 序列化它的例子目的。

有没有人有什么建议?有没有办法从我的第一个示例中获取 http 状态代码?

最佳答案

您可以尝试使用以下代码获取状态代码:val response = client.get<HttpResponse>(url)之后,要从响应中获取字节并将其序列化,您可以尝试使用 val bytes: ByteArray = response.readBytes()
您可以在此处找到完整的文档:
https://ktor.io/clients/http-client/quick-start/responses.html

关于ktor - 如何使用 Ktor 和 kotlinx 序列化获取 HttpCall 的状态码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61600668/

30 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com