当我使用 Dispatch 库和 Scala 时,出于调试目的,如何在编写这样的语句后以文本形式打印出带有标头等的整个 HTTP 请求?
val svc = url("http://api.hostip.info/country.php")
当我使用 Dispatch 库和 Scala 时,出于调试目的,如何在编写这样的语句后以文本形式打印出带有标头等的整个 HTTP 请求?
val svc = url("http://api.hostip.info/country.php")
Dispatch 基于 Netty.io,它完全实现了 sl4j 日志外观。调试日志已经通过以下方式为您完成:
com.ning.http.client
当心,它记录了很多废话。我假设您ch.qos.logback
用于记录目的:
转到src/main/resources
,创建一个名为 的文件default.logback.xml
,并将以下内容添加到其中:
<configuration>
<appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender">
<!-- encoders are assigned the type
ch.qos.logback.classic.encoder.PatternLayoutEncoder by default -->
<encoder>
<pattern>%-4relative [%thread] %-5level %logger{35} - %msg %n</pattern>
</encoder>
</appender>
<root level="DEBUG">
<appender-ref ref="STDOUT" />
</root>
</configuration>
假设您使用的是最新版本的 lib,则url(...)
返回 a Req
,它只是com.ning.http.client.RequestBuilder
. 您可以使用 获取底层请求对象svc.toRequest
,然后您可以调用toString
或组合其他可用方法,具体取决于您真正想要的信息。更多信息: