Create new client per-request
continuous-integration/drone/push Build is passing
Details
continuous-integration/drone/push Build is passing
Details
This commit is contained in:
parent
606b43e1c5
commit
78377bc860
18
http.go
18
http.go
|
@ -24,7 +24,6 @@ type RangeReadSeekCloser struct {
|
|||
bufferOffset int64
|
||||
closed bool
|
||||
fileName string
|
||||
httpClient http.Client
|
||||
}
|
||||
|
||||
func NewRangeReadSeekCloser(uri string) (*RangeReadSeekCloser, error) {
|
||||
|
@ -34,9 +33,6 @@ func NewRangeReadSeekCloser(uri string) (*RangeReadSeekCloser, error) {
|
|||
}
|
||||
r := &RangeReadSeekCloser{
|
||||
uri: parsedUrl,
|
||||
httpClient: http.Client{
|
||||
Transport: &http3.RoundTripper{},
|
||||
},
|
||||
}
|
||||
|
||||
if err = r.getInformation(); err != nil {
|
||||
|
@ -50,6 +46,16 @@ func (r *RangeReadSeekCloser) GetURI() string {
|
|||
return r.uri.String()
|
||||
}
|
||||
|
||||
func (r *RangeReadSeekCloser) getClient() *http.Client {
|
||||
return &http.Client{
|
||||
CheckRedirect: func(req *http.Request, via []*http.Request) error {
|
||||
req.Header.Del("referer")
|
||||
return nil
|
||||
},
|
||||
Transport: &http3.RoundTripper{},
|
||||
}
|
||||
}
|
||||
|
||||
func (r *RangeReadSeekCloser) retryConnect() error {
|
||||
r.bodyLock.Lock()
|
||||
defer r.bodyLock.Unlock()
|
||||
|
@ -62,7 +68,7 @@ func (r *RangeReadSeekCloser) retryConnect() error {
|
|||
|
||||
expectedLength := r.size - startOffset
|
||||
headers.Set("Range", fmt.Sprintf("bytes=%d-", startOffset))
|
||||
response, err := r.httpClient.Do(&http.Request{
|
||||
response, err := r.getClient().Do(&http.Request{
|
||||
Method: "GET",
|
||||
URL: r.uri,
|
||||
Header: headers,
|
||||
|
@ -212,7 +218,7 @@ func (r *RangeReadSeekCloser) GetFileName() string {
|
|||
}
|
||||
|
||||
func (r *RangeReadSeekCloser) getInformation() error {
|
||||
response, err := r.httpClient.Head(r.GetURI())
|
||||
response, err := r.getClient().Head(r.GetURI())
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue