在此代码中,我创建了一个名为的函数,在该函数中,我创建了文本区域,并且我从工作目录中存在的文件中获取数据,但是当我运行此代码并检查浏览器时,它只向我显示“使用文本区域编辑并提交”按钮。虽然我写信从文件打印标题和正文,但它并没有从那里获取数据。viewHandler
给定结果
type Page struct {
Title string
Body []byte
}
func loadPage(title string) (*Page, error) {
filename := title + ".txt"
body, err := ioutil.ReadFile(filename)
if err != nil {
return nil, err
}
return &Page{Title: title, Body: body}, nil
}
func viewHandler(w http.ResponseWriter, r *http.Request) {
title := r.URL.Path[len("/edit/"):]
p, err := loadPage(title)
if err != nil {
p = &Page{Title: title}
}
fmt.Fprintf(w, "<h1>Editing %s</h1>"+
"<form action=\"/save/%s\" method=\"POST\">"+
"<textarea name=\"body\">%s</textarea><br>"+
"<input type=\"submit\" value=\"Save\">"+
"</form>",
p.Title, p.Title, p.Body)
}
func main() {
http.HandleFunc("/view/", viewHandler)
log.Fatal(http.ListenAndServe(":8080", nil))
}
莫回无
相关分类