跳转到内容

Go 编程/简单 Web 应用

来自维基教科书,开放的书籍,为开放的世界

标准库中有多个包。其中一个包叫做 net/http。该包可用于创建简单的 Web 应用程序。以下是一个简单的例子,当访问 localhost:8080 时会输出 Hello world!。

package main

import (
   "fmt"
   "log"
   "net/http"
)

func helloFunc(w http.ResponseWriter, r *http.Request) {
   fmt.Fprintf(w, "Hello world!")
}

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

您可能会看到出现了一些新的东西。

import (
   "fmt"
   "net/http"
)

如您所见,fmt 包再次被导入。但是,net/http 包也被导入。

func helloFunc(w http.ResponseWriter, r *http.Request)

声明了一个名为 helloFunc 的函数。该函数使用 http.ResponseWriter 类型来构造 HTTP 响应。*http.Request 是指向服务器接收的或客户端发送的 HTTP 请求的指针。

fmt.Fprintf(w, "Hello world!")

在这行中,字符串 "Hello world!" 被写入 ResponseWriter,以便在输出中显示。

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

main 函数已声明,包含两个操作。处理程序函数 helloFunc 已连接到 "/" 路由。最后,ListenAndServe 已调用,端口为 "8080",第二个参数未指定路由器。

现在,当程序运行时,预计将在网站 localhost:8080 上显示 Hello world!

华夏公益教科书