无法理解Akka HTTP

时间:2016-07-14 16:22:00

标签: scala akka-http spray-routing

我在Scala中使用Akka HTTP with Spray Routing

获得以下代码
import akka.http.scaladsl.server.Directives._

val geoip =
path(RemainingPath) {remaining =>

  val response = . . .

  complete(response)
}

但是我收到了错误消息

[ERROR] FreeGeoIp.scala:45: error: missing parameter type
[ERROR]     path(RemainingPath) {remaining =>
[ERROR]                          ^
[ERROR] one error found

参数类型究竟应该去哪里?

关于此的文档非常糟糕,根据示例,此代码应该可以使用。

1 个答案:

答案 0 :(得分:1)

问题解决了。我用通配符进口了太多。当我减少通配符时,问题就消失了。这组进口似乎有效。

import akka.http.scaladsl.Http
import akka.http.scaladsl.model.HttpRequest
import akka.http.scaladsl.model.HttpResponse
import akka.http.scaladsl.model.Uri.apply
import akka.http.scaladsl.marshallers.sprayjson.SprayJsonSupport.sprayJsonUnmarshaller
import akka.http.scaladsl.marshalling.ToResponseMarshallable.apply
import akka.http.scaladsl.server.Directives._
import akka.http.scaladsl.unmarshalling.Unmarshal

import akka.stream.scaladsl._

import scala.concurrent.Future

import spray.json._
import spray.json.DefaultJsonProtocol._