📌  相关文章
📜  golang http 示例 - Go 编程语言 - Go 编程语言(1)

📅  最后修改于: 2023-12-03 15:01:01.251000             🧑  作者: Mango

Golang HTTP 示例

Golang 是一门强类型的编程语言,用于构建高可扩展性的网络应用程序。本文将介绍如何使用 Golang 实现 HTTP 服务,并提供示例代码。

内容列表
  • HTTP 服务概述
  • Golang 中 HTTP 包的使用
  • 实现一个 HTTP 服务
  • 示例代码
HTTP 服务概述

HTTP 是一种用于在 Web 上发送和接收数据的协议。它在所有互联网应用中都是广泛使用的,因此,实现一个 HTTP 服务是非常有用的。

一个 HTTP 服务可以用于返回静态网页、提供 API 服务等。Golang 提供了 HTTP 包来支持 HTTP 协议的处理。

Golang 中 HTTP 包的使用

Golang 中的 HTTP 包提供了一系列功能,包括:

  • 处理 HTTP 请求
  • 发送 HTTP 请求
  • 处理 Cookie 和 Session
  • 支持 HTTP 的中间件

HTTP 包提供了一些重要的结构体和函数:

  • http.Server - 用于启动 HTTP 服务器
  • http.Handle - 用于注册 URL 和对应的处理函数
  • http.HandleFunc - 用于注册 URL 和对应的处理函数
  • http.Request - HTTP 请求结构体
  • http.ResponseWriter - HTTP 响应结构体
  • http.Get - 发送 GET 请求
  • http.Post - 发送 POST 请求
实现一个 HTTP 服务

下面是一个简单的 Golang HTTP 服务的实现,它将监听 8080 端口,并返回一条 Hello World 消息:

package main

import (
    "fmt"
    "net/http"
)

func main() {
    http.HandleFunc("/", func(w http.ResponseWriter, r *http.Request) {
        fmt.Fprintf(w, "Hello World")
    })

    http.ListenAndServe(":8080", nil)
}

上述代码使用了 Golang 的 http.HandleFunc 函数,该函数用于注册 URL 和对应的处理函数。在本例中,我们注册了根 URL /,并将一个匿名函数作为处理函数。

当浏览器通过请求访问服务器时,该匿名函数将被调用,并向浏览器返回一个字符串 "Hello World"。

运行这个程序,打开浏览器并访问 http://localhost:8080,您应该能够看到 "Hello World" 的消息。

示例代码

您可以在下面找到完整的 Golang HTTP 示例代码:

package main

import (
	"fmt"
	"net/http"
)

func main() {
	http.HandleFunc("/", func(w http.ResponseWriter, r *http.Request) {
		fmt.Fprintf(w, "Hello World")
	})

	fmt.Println("Http server starting...")
	http.ListenAndServe(":8080", nil)
}

参考资料