akka-http mit mehreren Routenkonfigurationen

8

Schneller Hintergrund

Ich führe einige Beispiele durch und lerne den Akka-HTTP-Stack zum Erstellen eines neuen REST-Projekts (komplett nicht-UI). Ich habe das Akka HTTP Microservice Beispiel verwendet und erweitert, um eine Reihe von Anwendungsfällen zu bearbeiten Konfigurationen und wurden angenehm überrascht, wie gut Scala & amp; Akka HTTP arbeiten.

Aktuelle Einrichtung

Momentan habe ich eine Konfiguration wie folgt:

%Vor%

Der Parameter routes ist nur ein einfacher Wert, der die typischen Daten enthält, die path , pathPrefix usw. verwenden.

Das Problem

Gibt es irgendeine Möglichkeit, Routing in mehreren Scala-Dateien oder einem Beispiel irgendwo da draußen einzurichten?

Ich würde wirklich gerne in der Lage sein, eine Reihe von Klassen zu definieren, die die Probleme trennen und mit Actor-Setup und -Verarbeitung arbeiten, um verschiedene Bereiche der Anwendung zu behandeln und das Marshalling einfach an die Erweiterung root App zu belassen.

Das könnte ich zu viel in Bezug darauf denken, wie ich Sachen in Java gemacht habe, indem ich Annotationen wie @javax.ws.rs.Path("/whatever") für meine Klassen verwende. Wenn dies der Fall ist, zögern Sie nicht, auf die Änderung der Denkweise hinzuweisen.

Ich habe versucht, nach ein paar verschiedenen Keywords zu suchen, glaube aber, dass ich die falsche Frage stelle (z. B. 1 , 2 ) zu definieren.

    
el n00b 29.12.2015, 15:48
quelle

1 Antwort

16

Problem 1 - Routen in mehreren Dateien kombinieren

Sie können Routen aus mehreren Dateien ganz einfach kombinieren.

FooRouter.scala

%Vor%

BarRouter.scala

%Vor%

MainRouter.scala

%Vor%

Hier haben Sie einige Dokumente:

Problem 2 - separates Routing, Marshalling usw.

Ja, Sie können Routing, Marshalling und Anwendungslogik trennen. Hier haben Sie Aktivator Beispiel: Ссылка

Problem 3 - Behandle Routen mithilfe von Anmerkungen

Ich kenne keine Bibliothek, die es erlaubt, annotion zu verwenden, um Routing in akka-http zu definieren. Versuchen Sie mehr über DSL-Routing zu erfahren. Dies stellt einen anderen Ansatz für das HTTP-Routing dar, ist aber auch ein praktisches Werkzeug.

    
mgosk 29.12.2015, 17:44
quelle

Tags und Links