Heim >Backend-Entwicklung >Golang >Wie werden Webseiten und API-Routen am selben Port mit unterschiedlichen Handle-Mustern bereitgestellt?

Wie werden Webseiten und API-Routen am selben Port mit unterschiedlichen Handle-Mustern bereitgestellt?

Barbara Streisand
Barbara StreisandOriginal
2024-11-22 05:15:12624Durchsuche

How to Serve Web Pages and API Routes on the Same Port with Varied Handle Patterns?

Bereitstellen von Webseiten und API-Routen am selben Port mit unterschiedlichen Handle-Mustern

Entwickler suchen häufig nach Lösungen, um Webseiten und API-Routen gemeinsam zu hosten mit festgelegten Portadressen und Handle-Mustern. Um dies zu erreichen, sollten Sie in Betracht ziehen, die vom Paket net/http gebotenen Funktionen zu nutzen.

Wie im bereitgestellten Beispielcode dargestellt, können Sie die Funktion http.FileServer() verwenden, um einen Dateiserver an der Stamm-URL einzurichten ( „/“). Dadurch wird sichergestellt, dass über dieses Handle-Muster auf statische Dateien zugegriffen werden kann, die im angegebenen Verzeichnis gespeichert sind.

Um API-Routen zu verarbeiten, registrieren Sie einen dedizierten Handler, der auf den gewünschten Pfad abzielt, wie im Beispiel „/api“. Innerhalb dieses Handlers können Sie mithilfe einer Routing-Bibliothek wie mux.Router bestimmte Routenmuster und die entsprechenden Funktionen konfigurieren.

Zum Beispiel zeigt die angegebene API-Route, wie Anfragen für Benutzervorgänge verarbeitet werden.

Dieser Ansatz wird nativ durch den intelligenten Mustervergleichsmechanismus des net/http-Pakets unterstützt. Langstreckenrouten haben Vorrang vor kürzeren. Somit würde der für „/api/“ registrierte API-Handler Anfragen abfangen, die mit „/api/“ beginnen, während der Dateihandler Anfragen für alle anderen Pfade unter dem Teilbaum „/api/“ bedienen würde.

Das obige ist der detaillierte Inhalt vonWie werden Webseiten und API-Routen am selben Port mit unterschiedlichen Handle-Mustern bereitgestellt?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn