golang http BasicAuth
时间: 2023-10-16 14:09:59 浏览: 161
在 Golang 中使用 Basic Authentication 进行 HTTP 认证可以通过设置请求头来实现。下面是一个示例代码:
```go
package main
import (
"encoding/base64"
"fmt"
"net/http"
)
func main() {
username := "admin"
password := "password"
// 构造 Basic Auth 认证字符串
auth := username + ":" + password
basicAuth := "Basic " + base64.StdEncoding.EncodeToString([]byte(auth))
// 创建 HTTP 请求
req, err := http.NewRequest("GET", "https://example.com", nil)
if err != nil {
fmt.Println("创建请求失败:", err)
return
}
// 设置 Authorization 请求头
req.Header.Set("Authorization", basicAuth)
// 发送请求
client := &http.Client{}
resp, err := client.Do(req)
if err != nil {
fmt.Println("发送请求失败:", err)
return
}
defer resp.Body.Close()
// 处理响应
fmt.Println("响应状态码:", resp.StatusCode)
}
```
在上面的示例中,我们首先构造了 Basic Auth 认证字符串,然后创建了一个 HTTP 请求,并设置了 Authorization 请求头。最后,我们使用 `client.Do(req)` 方法发送请求,并处理响应。
请注意,这仅是一个基本示例。在实际应用中,你需要根据你的具体需求进行适当的错误处理和身份验证逻辑。
阅读全文