scala - 向 Akka HTTP HttpRequest 添加标头
问题描述
我有一个现有的 Akka HTTP HttpRequest
,我想向它添加两个标头。
val req: HttpRequest = ???
val hs: Seq[HttpHeader] = Seq(RawHeader("a", "b"))
req.addHeaders(hs)
预期的:
HttpRequest
带有附加标头的新对象
实际的:
.addHeaders
期望 ajava.lang.Iterable
并且不编译。
在 Scala 中推荐的方法是什么?
有一个解决方法,但它有点笨拙:
req.withHeaders(req.headers ++ hs)
运行 Scala 2.12.8 和 Akka HTTP 10.1.7。
解决方案
另一种解决方法可能是一个不那么笨重的小条子。这大致addHeaders
是在源代码中定义的方式。不幸的是,我不知道为什么addHeaders
没有暴露在 scala api 中。
req.mapHeaders(_ ++ hs)
推荐阅读
- python - 迭代 Pandas DataFrame 以将数据传递到 API
- python - 重复提取的数据不打印两次(Python)
- sql - 关于在查询中组合不同计数的 SQL 问题
- python - How to handle events without queue?
- asp.net - 如何从值中硬编码选择列表?
- ios - adjustsFontSizeToFitWidth 的意外行为
- excel - 我的 Powershell 循环不会停止迭代最后一行数据
- python - 为什么python中的数据库查询不返回整数值?
- python - 在 django 中为模型编写自定义更新方法
- google-cloud-platform - 是否可以在 Dialogflow 操作控制台中测试 Google Cloud Text-to-Speech 语音?