Heim >Backend-Entwicklung >Golang >Wie stellt man statische HTML-Dateien mit einem Go-Webserver bereit?

Wie stellt man statische HTML-Dateien mit einem Go-Webserver bereit?

Linda Hamilton
Linda HamiltonOriginal
2024-12-24 00:51:15130Durchsuche

How to Serve Static HTML Files with a Go Web Server?

Bereitstellen statischer HTML-Dateien mit einem Go-Webserver

Für die Bereitstellung statischer HTML-Dateien wie index.html bietet das Net/http-Paket von Go eine elegante Lösung. So geht's:

package main

import (
    "net/http"
)

func main() {
    http.Handle("/", http.FileServer(http.Dir("./static")))
    http.ListenAndServe(":3000", nil)
}

Dieser Code geht davon aus, dass Ihre statischen Dateien in einem Verzeichnis namens „static“ im Stammverzeichnis des Projekts gespeichert werden. Indem Sie die FileServer()-Funktion aufrufen und ihr das Verzeichnis mit Ihren HTML-Dateien übergeben, weisen Sie den Webserver an, diese Dateien unverändert bereitzustellen.

Wenn Sie http://localhost:3000/ besuchen, den Index. Die HTML-Datei aus dem statischen Verzeichnis wird gerendert. Auf andere Dateien in diesem Verzeichnis kann auch direkt zugegriffen werden, indem die URL geändert wird.

Dateien von einer anderen URL bereitstellen

Wenn Sie Ihre statischen Dateien lieber von einer bestimmten URL bereitstellen möchten B. http://localhost:3000/static, können Sie die Funktion StripPrefix() verwenden:

package main

import (
    "net/http"
)

func main() {
    http.Handle("/static/", http.StripPrefix("/static/", http.FileServer(http.Dir("./public"))))
    http.ListenAndServe(":3000", nil)
}

Dieser Code richtet einen Handler ein, der Entfernt „/static/“ aus der Anforderungs-URL, bevor Dateien aus dem „public“-Verzeichnis bereitgestellt werden. Dadurch sind Dateien aus dem öffentlichen Verzeichnis unter http://localhost:3000/static/ zugänglich.

Das obige ist der detaillierte Inhalt vonWie stellt man statische HTML-Dateien mit einem Go-Webserver bereit?. 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