使用 Akka HTTP 客户端为 oauth1 签署 http 请求

问题描述

我正在尝试寻找一种使用 OAuth 授权执行 http 请求的方法。基本上我已经拥有所有必需的秘密/令牌 对于发送此类请求,应以此处描述的相当棘手的方式进行签名:https://oauth1.wp-api.org/docs/basics/Signing.html

是否有任何适用于 Akka HTTP 客户端 API 的库/示例?

解决方法

由于我没有找到任何解决方案,我已经实现了 GET 请求的方法: https://gist.github.com/Blackmorse/cdb5e13d749e7902ad47d5a168dd23ca

用法: 例如。您希望从 s"$URL/$API_ENDPOINT?param1=value1&param2=value2" 请求数据。

构建 Akks 的 akka.http.scaladsl.model.HttpRequest 对象:

val request = create(Map("param1" -> "value1","param2" -> "value2"))

并使用它:

Source.single((request,someData)).via(Http().cachedHostConnectionPoolHttps[T](URL))