我不敢相信这不在http4s 文档中,而且我能够在线挖掘的示例代码(在浏览了足够长的时间以发现UrlForm
该类之后)对我不起作用。
相关的代码如下所示:
case req @ POST -> Root / "compose" =>
req.decode[UrlForm] { ps =>
println("ps.values: " + ps.values)
val content = ps.getFirstOrElse("content",
throw new IllegalStateException("No content given!"))
// Do something with `content`...
}
提交关联表单时,IllegalStateException
会抛出 。ps.values
是一个空地图 ( Map()
)。
我可以看到(使用println
)Content-Type
is application/x-www-form-urlencoded
,正如预期的那样,我可以从浏览器的 Network 选项卡中看到请求“参数”(编码的表单值)正在正确发送。