如何使用akka-http进行HTTPS(非HTTP)请求?

Max*_*kov 6 akka akka-http

我使用以下代码与akka-httpAkka Actor内的库发出HTTP请求:

implicit val materializer = ActorFlowMaterializer()
implicit val system = context.system

val request = HttpRequest(HttpMethods.GET, "http://ya.ru")
val content = for {
  response <- Http().singleRequest(request)
  content <- Unmarshal(response.entity).to[String]
} yield content
Run Code Online (Sandbox Code Playgroud)

一切工作正常,但现在我想使HTTPS请求(只需更换http://https://).之后,content变量将包含以下响应:

<head><title>400 The plain HTTP request was sent to HTTPS port</title></head>
<body bgcolor="white">
<center><h1>400 Bad Request</h1></center>
<center>The plain HTTP request was sent to HTTPS port</center>
<hr><center>nginx</center>
</body>
</html>
Run Code Online (Sandbox Code Playgroud)

似乎akka-http不支持HTTPS协议.发送HTTPS请求是否正确或可能akka-http

小智 4

如果你看一下官方文档,你会发现你必须配置 HTTPS 上下文。那么它应该可以工作。