29 lines
616 B
Go
29 lines
616 B
Go
package tripsgo
|
|
|
|
import (
|
|
"fmt"
|
|
"net/http"
|
|
"os"
|
|
"time"
|
|
)
|
|
|
|
func getSwaggerJsonPath() string {
|
|
if value, ok := os.LookupEnv("SWAGGER_JSON_PATH"); ok {
|
|
return value
|
|
}
|
|
return "./api/swagger.json"
|
|
}
|
|
|
|
func swaggerDocsJSON(w http.ResponseWriter, r *http.Request) {
|
|
swaggerPath := getSwaggerJsonPath()
|
|
fData, err := os.Open(swaggerPath)
|
|
if err != nil {
|
|
var msg = fmt.Sprintf("swaggerDocsJson - Unable to open and read swagger.json : %v", err)
|
|
w.WriteHeader(http.StatusInternalServerError)
|
|
Info.Println(msg)
|
|
http.Error(w, msg, -1)
|
|
return
|
|
}
|
|
http.ServeContent(w, r, "swagger.json", time.Now(), fData)
|
|
}
|