Golang net/http标准库常用请求方法
在Go语言的标准库net/http
中,我们可以使用http.MethodGet
、http.MethodPost
等常量来指代HTTP请求的方法。以下是一些常用的HTTP请求方法及其使用示例:
http.MethodGet
:用于获取资源。
resp, err := http.Get("http://example.com")
if err != nil {
// 错误处理
}
// 使用 resp 读取响应体
http.MethodPost
:用于提交数据。
resp, err := http.Post("http://example.com", "application/x-www-form-urlencoded", strings.NewReader("key=value"))
if err != nil {
// 错误处理
}
// 使用 resp 读取响应体
http.MethodPut
:用于更新或创建资源。
req, err := http.NewRequest(http.MethodPut, "http://example.com", strings.NewReader("key=value"))
if err != nil {
// 错误处理
}
resp, err := http.DefaultClient.Do(req)
if err != nil {
// 错误处理
}
// 使用 resp 读取响应体
http.MethodDelete
:用于删除资源。
req, err := http.NewRequest(http.MethodDelete, "http://example.com", nil)
if err != nil {
// 错误处理
}
resp, err := http.DefaultClient.Do(req)
if err != nil {
// 错误处理
}
// 使用 resp 读取响应体
以上代码展示了如何使用net/http
包中的方法发起不同类型的HTTP请求,并处理可能发生的错误。在实际应用中,你可能还需要处理其他类型的HTTP请求,如http.MethodPatch
、http.MethodOptions
等,方法都是类似的,都是通过http.NewRequest
函数创建请求,然后通过http.DefaultClient.Do
方法发送请求并获取响应。
评论已关闭