fix: 健康探测对 Anthropic 渠道补发 x-api-key 与 anthropic-version 头
官方 Anthropic API 只认 x-api-key,之前只发 Bearer 会让 Anthropic 渠道 持续探测失败被误进 cooldown、流量归零。两个认证头并存互不干扰。
This commit is contained in:
1 parent
1f8af649ca
commit
57134d2af2
1 file changed
+9
@@ -86,6 +86,15 @@ func (h *HealthMonitor) probe(ch *store.Channel) {
|
||||
req, _ := http.NewRequest(http.MethodGet, url, nil)
|
||||
req.Header.Set("Authorization", "Bearer "+key)
|
||||
req.Header.Set("Accept", "application/json")
|
||||
// Anthropic 官方 API 只认 x-api-key(Bearer 被忽略),探测必须带上才不会误判不健康。
|
||||
// 两个头同时发:官方 API 忽略 Bearer,OpenAI 兼容渠道忽略 x-api-key,互不干扰。
|
||||
for _, f := range ch.FormatsEffective() {
|
||||
if f == store.FormatMessages {
|
||||
req.Header.Set("x-api-key", key)
|
||||
req.Header.Set("anthropic-version", "2023-06-01")
|
||||
break
|
||||
}
|
||||
}
|
||||
resp, err := h.hc.Do(req)
|
||||
ok := err == nil && resp.StatusCode >= 200 && resp.StatusCode < 300
|
||||
if resp != nil {
|
||||
|
||||
Reference in new issue
Block a user