我只是从 Go 开始。我有一个关于大猩猩/多路复用器的问题。
我正在尝试列出目录中的文件;并且响应将从 GET 请求发回以列出文件。现在,当我在目录中创建一个新文件时;GET 请求没有列出新文件。我知道我需要再次运行 go build。我可以在不重新构建的情况下做到这一点吗?
type Images struct {
Image string `json:"image"`
Path string `json:"path"`
Timestamp string `json:"timestamp"`
Labels string `json:"labels"`
Version string `json:"version"`
}
var images []Images
func getImages(w http.ResponseWriter, r *http.Request) {
w.Header().Set("Content-Type", "application/json")
json.NewEncoder(w).Encode(images)
}
func main() {
r := mux.NewRouter()
files, err := ioutil.ReadDir(os.Args[1])
if err != nil {
log.Fatal(err)
}
for _, file := range files {
images = append(images, Images{Image: file.Name(), Path: os.Args[1]})
}
fmt.Println(images)
// Route handles & endpoints
r.HandleFunc("/images", getImages).Methods("GET")
log.Fatal(http.ListenAndServe(":8080", r))
}
FFIVE
相关分类