swaggerui
Embedded, self-hosted Swagger Ui for go servers
This module provides swaggerui.Handler
, which you can use to serve an embedded copy of Swagger UI as well as an embedded specification for your API.
Example usage
package main
import (
_ "embed"
"log"
"net/http"
"github.com/flowchartsman/swaggerui"
)
//go:embed swagger.json
var spec []byte
var port = 8000
func main() {
log.SetFlags(0)
mux := http.NewServeMux()
mux.Handle("/swagger/", http.StripPrefix("/swagger", swaggerui.Handler(spec)))
log.Printf("Listening on port %d...", port)
err := http.ListenAndServe(fmt.Sprintf(":%d", port), mux)
if err != nil {
log.Fatal(err)
}
}