Я собрал golang func, который берет загруженный файл и сохраняет его в папку. Незадолго до os.Create()
я получаю следующее сообщение об ошибке:golang загрузить файл err runtime ошибка индекс вне диапазона
http: panic serving [::1]:64373: runtime error: index out of range
Моя функция golang является:
func webUploadHandler(w http.ResponseWriter, r *http.Request) {
file, header, err := r.FormFile("file") // the FormFile function takes in the POST input id file
if err != nil {
fmt.Fprintln(w, err)
return
}
defer file.Close()
// My error comes here
messageId := r.URL.Query()["id"][0]
out, err := os.Create("./upload/" + messageId + ".mp3")
if err != nil {
fmt.Fprintf(w, "Unable to create the file for writing. Check your write access privilege")
return
}
defer out.Close()
// write the content from POST to the file
_, err = io.Copy(out, file)
if err != nil {
fmt.Fprintln(w, err)
}
fmt.Fprintf(w,"File uploaded successfully : ")
fmt.Fprintf(w, header.Filename)
}
какие-либо идеи? очень ценю
Или просто используйте [метод 'Get'] (http://golang.org/pkg/net/url/#Values.Get). –
oi, 'len' равно 0. – bboy
@bboy, объясняющий сообщение об ошибке с индексом, и вам нужно адаптировать свой код для обработки этого случая. – VonC