我正在用一个简单的json主体创建一个post请求。当我创建一个json字符串时,如下所示:
Json.encodeToString(NewAlias(my_id= "j-mueller", alias_name= "finny"))
然后打印出来,看起来像这样:
{"my_id":"j-mueller","alias_name":"finny"}
然后,当我尝试使用ktor将其发布到端点时,如下所示:
val response = httpClient.post<String>("https://myurl/als/create") {
contentType(ContentType.Application.Json)
body = Json.encodeToString(NewAlias(my_id= "j-mueller", alias_name= "finny"))
}
在日志中,我看到ktor似乎逃避了内容,它看起来是这样的:
"{\"my_id\":\"j-mueller\",\"alias_name\":\"finny\"}"
我得到一个“400坏请求”作为回应。我对这种行为有影响吗?还是仅仅是ktor记录器添加了“”?当我尝试通过 Postman 发送的邮件,但正文中没有“/”时,它是有效的,所以我认为这就是问题所在。。。
有什么想法吗?
谢谢,詹斯
1条答案
按热度按时间ndh0cuux1#
使用jsonfeature并让ktor序列化一个主体:
或显式序列化请求正文,但不使用jsonfeature: