Не могу понять маршрутизацию в Akka HTTP
У меня есть следующий кусок кода в Scala, используя Akka HTTP с 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 ответ
Задача решена. У меня было слишком много импорта с подстановочными знаками. Когда я сократил подстановочные знаки, проблема ушла. Этот набор импорта, кажется, работает.
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._