Ai
1 Star 0 Fork 0

aly1a/boat-go

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
文件
克隆/下载
main.go 1.50 KB
一键复制 编辑 原始数据 按行查看 历史
aly1a 提交于 2025-11-12 20:26 +08:00 . 增加对 sognoz 的支持
package httptransport
import (
"errors"
"net/http"
"strings"
"gitee.com/aly1a/boat-go/module/logger"
)
type HtpCli struct {
HtpClient *http.Client
}
var httpClient *http.Client
// 创建FastHttpClient
func New() *HtpCli {
if httpClient != nil {
return &HtpCli{
HtpClient: httpClient,
}
}
httpClient = CreateHttpClient()
return &HtpCli{
HtpClient: httpClient,
}
}
func Client() *http.Client {
return httpClient
}
// 一个post请求
func (f HtpCli) Post(data string, url string, headers map[string]string) (*http.Response, error) {
if f.HtpClient == nil {
return nil, errors.New("未初始化【http.Transport】")
}
// 创建请求
body := strings.NewReader(data)
req, err := http.NewRequest("POST", url, body)
if err != nil {
return nil, err
}
// 设置请求头
req.Header.Set("Content-Type", "application/json")
for k, v := range headers {
req.Header.Set(k, v)
}
//
return f.HtpClient.Do(req)
}
// 一个get请求
func (f HtpCli) Get(url string, headers map[string]string) (*http.Response, error) {
if f.HtpClient == nil {
return nil, errors.New("未初始化【http.Transport】")
}
// 创建请求
req, err := http.NewRequest("GET", url, nil)
if err != nil {
return nil, err
}
for k, v := range headers {
req.Header.Set(k, v)
}
//
return f.HtpClient.Do(req)
}
// 关闭FastHttpClient
func Close() {
if httpClient != nil {
httpClient.CloseIdleConnections()
logger.LogInfoln("关闭HttpClient成功")
} else {
logger.LogInfoln("未开启HttpClient")
}
}
Loading...
马建仓 AI 助手
尝试更多
代码解读
代码找茬
代码优化
Go
1
https://gitee.com/aly1a/boat-go.git
git@gitee.com:aly1a/boat-go.git
aly1a
boat-go
boat-go
v0.1.3

搜索帮助