我需要根据正文为请求添加 header 。如何为客户端请求添加拦截器?我试过了
httpClient.requestPipeline.intercept(HttpRequestPipeline.Send) { context: PipelineContext<Any, HttpRequestBuilder> ->
context.proceed()
}
但是没有调用
最佳答案
您可以使用HttpSendPipeline
的State
阶段来修改请求:
val client = HttpClient(Apache)
client.sendPipeline.intercept(HttpSendPipeline.State) {
context.headers.append("myHeader", context.body.toString())
}
val r = client.get<String>("http://httpbin.org/get")
println(r)
关于native - Ktor 原生请求拦截器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/65763597/