From 598465115b974dc4ef8af01c74c26861fdfdb4c7 Mon Sep 17 00:00:00 2001 From: timerzz Date: Mon, 13 May 2024 21:41:26 +0800 Subject: [PATCH] =?UTF-8?q?feat=20=E6=AF=8F=E6=AC=A1=E8=AF=B7=E6=B1=82?= =?UTF-8?q?=E5=89=8D=E4=BD=BF=E7=94=A8=E9=9A=8F=E6=9C=BA=E7=9A=84ua?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- go.mod | 1 + go.sum | 2 ++ pkg/restry-pool/resty.go | 7 ++++++- 3 files changed, 9 insertions(+), 1 deletion(-) diff --git a/go.mod b/go.mod index 82d9e52..dbe9b75 100644 --- a/go.mod +++ b/go.mod @@ -30,6 +30,7 @@ require ( github.com/cloudwego/base64x v0.1.4 // indirect github.com/cloudwego/iasm v0.2.0 // indirect github.com/coreos/go-iptables v0.7.0 // indirect + github.com/corpix/uarand v0.2.0 // indirect github.com/ericlagergren/aegis v0.0.0-20230312195928-b4ce538b56f9 // indirect github.com/ericlagergren/polyval v0.0.0-20220411101811-e25bc10ba391 // indirect github.com/ericlagergren/siv v0.0.0-20220507050439-0b757b3aa5f1 // indirect diff --git a/go.sum b/go.sum index 61bada8..43b5b99 100644 --- a/go.sum +++ b/go.sum @@ -49,6 +49,8 @@ github.com/cloudwego/iasm v0.2.0 h1:1KNIy1I1H9hNNFEEH3DVnI4UujN+1zjpuk6gwHLTssg= github.com/cloudwego/iasm v0.2.0/go.mod h1:8rXZaNYT2n95jn+zTI1sDr+IgcD2GVs0nlbbQPiEFhY= github.com/coreos/go-iptables v0.7.0 h1:XWM3V+MPRr5/q51NuWSgU0fqMad64Zyxs8ZUoMsamr8= github.com/coreos/go-iptables v0.7.0/go.mod h1:Qe8Bv2Xik5FyTXwgIbLAnv2sWSBmvWdFETJConOQ//Q= +github.com/corpix/uarand v0.2.0 h1:U98xXwud/AVuCpkpgfPF7J5TQgr7R5tqT8VZP5KWbzE= +github.com/corpix/uarand v0.2.0/go.mod h1:/3Z1QIqWkDIhf6XWn/08/uMHoQ8JUoTIKc2iPchBOmM= github.com/creack/pty v1.1.9/go.mod h1:oKZEueFk5CKHvIhNR5MUki03XCEU+Q6VDXinZuGJ33E= github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38= github.com/davecgh/go-spew v1.1.1 h1:vj9j/u1bqnvCEfJOwUhtlOARqs3+rkHYY13jYWTU97c= diff --git a/pkg/restry-pool/resty.go b/pkg/restry-pool/resty.go index 7d80efc..34cd9f7 100644 --- a/pkg/restry-pool/resty.go +++ b/pkg/restry-pool/resty.go @@ -2,6 +2,7 @@ package restry_pool import ( "context" + "github.com/corpix/uarand" "github.com/go-resty/resty/v2" "net" "net/http" @@ -32,11 +33,15 @@ const ( UserAgent = "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/123.0.0.0 Safari/537.36 Edg/123.0.0.0" ) +func beforeRequest(cli *resty.Client, req *resty.Request) error { + cli.SetHeader("User-Agent", uarand.GetRandom()) + return nil +} func NewRestyPool() *restyPool { return &restyPool{ resty: sync.Pool{ New: func() any { - return resty.New().SetHeader("User-Agent", UserAgent) + return resty.New().SetHeader("User-Agent", UserAgent).OnBeforeRequest(beforeRequest) }, }, transport: sync.Pool{