7.10 Redirect 重定向

Redirect 主要实现重定向功能,用法很简单,闲话少叙,上示例。

示例:

  1. package main
  2. import (
  3. "io/ioutil"
  4. "log"
  5. "net/http"
  6. )
  7. func sayHelloHandler(w http.ResponseWriter, r *http.Request) {
  8. http.Redirect(w, r, "http://www.baidu.com", http.StatusFound)//重定向
  9. content := []byte("hello world")
  10. err := ioutil.WriteFile("test.txt", content, 0644)//向test.txt写入hello world
  11. if err != nil {
  12. panic(err)
  13. }
  14. }
  15. func main() {
  16. http.HandleFunc("/", sayHelloHandler) // 设置访问路由
  17. log.Fatal(http.ListenAndServe(":8080", nil))
  18. }

运行上面示例,访问http://127.0.0.1:8080 , 会重定向到www.baidu.com ,同时新创建了一个文件test.txt,内容为

hello world。

小结:

http.StatusFound 为状态码。

http.Redirect ()之后的代码还会继续执行完,再重定向到指定url。可以用return结束执行。

links