🐛 fix: proxy bug (#49)

This commit is contained in:
Buer 2024-01-20 13:26:11 +08:00 committed by GitHub
parent 33bb1a04a7
commit 2cc120f35b
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
16 changed files with 19 additions and 18 deletions

View File

@ -38,6 +38,8 @@ func (h *HTTPClient) getClientFromPool(proxyAddr string) *http.Client {
}
func (h *HTTPClient) returnClientToPool(client *http.Client) {
// 清除代理设置
client.Transport = nil
clientPool.Put(client)
}

View File

@ -48,7 +48,7 @@ func GetChannel(channelType int, baseUrl, other, porxy, modelMapping string) mod
Type: channelType,
BaseURL: &baseUrl,
Other: other,
Proxy: porxy,
Proxy: &porxy,
ModelMapping: &modelMapping,
Key: GetTestToken(),
}

View File

@ -25,7 +25,7 @@ type Channel struct {
UsedQuota int64 `json:"used_quota" gorm:"bigint;default:0"`
ModelMapping *string `json:"model_mapping" gorm:"type:varchar(1024);default:''"`
Priority *int64 `json:"priority" gorm:"bigint;default:0"`
Proxy string `json:"proxy" gorm:"type:varchar(255);default:''"`
Proxy *string `json:"proxy" gorm:"type:varchar(255);default:''"`
TestModel string `json:"test_model" gorm:"type:varchar(50);default:''"`
}

View File

@ -26,7 +26,7 @@ func (f AliProviderFactory) Create(channel *model.Channel) base.ProviderInterfac
BaseProvider: base.BaseProvider{
Config: getConfig(),
Channel: channel,
Requester: requester.NewHTTPRequester(channel.Proxy, requestErrorHandle),
Requester: requester.NewHTTPRequester(*channel.Proxy, requestErrorHandle),
},
}
}

View File

@ -17,7 +17,7 @@ func (f AzureProviderFactory) Create(channel *model.Channel) base.ProviderInterf
BaseProvider: base.BaseProvider{
Config: config,
Channel: channel,
Requester: requester.NewHTTPRequester(channel.Proxy, openai.RequestErrorHandle),
Requester: requester.NewHTTPRequester(*channel.Proxy, openai.RequestErrorHandle),
},
IsAzure: true,
BalanceAction: false,

View File

@ -2,7 +2,6 @@ package azure
import (
"errors"
"fmt"
"net/http"
"one-api/common"
"one-api/providers/openai"
@ -85,7 +84,6 @@ func (p *AzureProvider) ResponseAzureImageHandler(resp *http.Response, azure *Im
// 休眠 2 秒
time.Sleep(2 * time.Second)
_, errWithCode = p.Requester.SendRequest(req, &getImageAzureResponse, false)
fmt.Println("getImageAzureResponse", getImageAzureResponse)
if errWithCode != nil {
return
}

View File

@ -17,7 +17,7 @@ func (f AzureSpeechProviderFactory) Create(channel *model.Channel) base.Provider
AudioSpeech: "/cognitiveservices/v1",
},
Channel: channel,
Requester: requester.NewHTTPRequester(channel.Proxy, nil),
Requester: requester.NewHTTPRequester(*channel.Proxy, nil),
},
}
}

View File

@ -18,7 +18,7 @@ func (f BaichuanProviderFactory) Create(channel *model.Channel) base.ProviderInt
BaseProvider: base.BaseProvider{
Config: getConfig(),
Channel: channel,
Requester: requester.NewHTTPRequester(channel.Proxy, openai.RequestErrorHandle),
Requester: requester.NewHTTPRequester(*channel.Proxy, openai.RequestErrorHandle),
},
},
}

View File

@ -29,7 +29,7 @@ func (f BaiduProviderFactory) Create(channel *model.Channel) base.ProviderInterf
BaseProvider: base.BaseProvider{
Config: getConfig(),
Channel: channel,
Requester: requester.NewHTTPRequester(channel.Proxy, requestErrorHandle),
Requester: requester.NewHTTPRequester(*channel.Proxy, requestErrorHandle),
},
}
}

View File

@ -17,7 +17,7 @@ func (f ClaudeProviderFactory) Create(channel *model.Channel) base.ProviderInter
BaseProvider: base.BaseProvider{
Config: getConfig(),
Channel: channel,
Requester: requester.NewHTTPRequester(channel.Proxy, requestErrorHandle),
Requester: requester.NewHTTPRequester(*channel.Proxy, requestErrorHandle),
},
}
}

View File

@ -19,7 +19,7 @@ func (f GeminiProviderFactory) Create(channel *model.Channel) base.ProviderInter
BaseProvider: base.BaseProvider{
Config: getConfig(),
Channel: channel,
Requester: requester.NewHTTPRequester(channel.Proxy, requestErrorHandle),
Requester: requester.NewHTTPRequester(*channel.Proxy, requestErrorHandle),
},
}
}

View File

@ -37,7 +37,7 @@ func CreateOpenAIProvider(channel *model.Channel, baseURL string) *OpenAIProvide
BaseProvider: base.BaseProvider{
Config: config,
Channel: channel,
Requester: requester.NewHTTPRequester(channel.Proxy, RequestErrorHandle),
Requester: requester.NewHTTPRequester(*channel.Proxy, RequestErrorHandle),
},
IsAzure: false,
BalanceAction: true,

View File

@ -19,7 +19,7 @@ func (f PalmProviderFactory) Create(channel *model.Channel) base.ProviderInterfa
BaseProvider: base.BaseProvider{
Config: getConfig(),
Channel: channel,
Requester: requester.NewHTTPRequester(channel.Proxy, requestErrorHandle),
Requester: requester.NewHTTPRequester(*channel.Proxy, requestErrorHandle),
},
}
}

View File

@ -25,7 +25,7 @@ func (f TencentProviderFactory) Create(channel *model.Channel) base.ProviderInte
BaseProvider: base.BaseProvider{
Config: getConfig(),
Channel: channel,
Requester: requester.NewHTTPRequester(channel.Proxy, requestErrorHandle),
Requester: requester.NewHTTPRequester(*channel.Proxy, requestErrorHandle),
},
}
}

View File

@ -23,9 +23,9 @@ func (f XunfeiProviderFactory) Create(channel *model.Channel) base.ProviderInter
BaseProvider: base.BaseProvider{
Config: getConfig(),
Channel: channel,
Requester: requester.NewHTTPRequester(channel.Proxy, nil),
Requester: requester.NewHTTPRequester(*channel.Proxy, nil),
},
wsRequester: requester.NewWSRequester(channel.Proxy),
wsRequester: requester.NewWSRequester(*channel.Proxy),
}
}
@ -103,7 +103,8 @@ func (p *XunfeiProvider) buildXunfeiAuthUrl(hostUrl string, apiKey, apiSecret st
}
ul, err := url.Parse(hostUrl)
if err != nil {
fmt.Println(err)
common.SysError("url parse error: " + err.Error())
return ""
}
date := time.Now().UTC().Format(time.RFC1123)
signString := []string{"host: " + ul.Host, "date: " + date, "GET " + ul.Path + " HTTP/1.1"}

View File

@ -27,7 +27,7 @@ func (f ZhipuProviderFactory) Create(channel *model.Channel) base.ProviderInterf
BaseProvider: base.BaseProvider{
Config: getConfig(),
Channel: channel,
Requester: requester.NewHTTPRequester(channel.Proxy, requestErrorHandle),
Requester: requester.NewHTTPRequester(*channel.Proxy, requestErrorHandle),
},
}
}