Golang 中国
package main

import (
  "net/http"
  "fmt"
)

func indexHandler(w http.ResponseWriter, r *http.Request) {
  r.ParseForm()
  var page string
  if r.Form["name"][0] == "" {
    page = "默认"
  }else{
    page = r.Form["name"][0]
  }
  fmt.Fprint(w, page + "页面已打开!")
}

func main() {
  http.HandleFunc("/", indexHandler)
  http.ListenAndServe(":8080", nil)
}

如果在地址栏里面传name的值没有问题,但是如果不传值,用 http://localhost:8080/ 访问会打不开网页,应该怎么改程序才能出来默认页面?

2 回复
jimmykuu
#1 jimmykuu • 2015-12-27 22:35

r.Form 的类型是 urls.Values ,去看下文档就知道怎么做了。

var page string = r.Form.Get("name")
if page == "" {
    page = "默认"
}
shook
#2 shook • 2015-12-28 12:26

非常感谢,这样确实就不出错了!

需要 登录 后方可回复, 如果你还没有账号你可以 注册 一个帐号。