Update index.js
Browse files
index.js
CHANGED
|
@@ -107,19 +107,17 @@ class TokenManager {
|
|
| 107 |
if (isWaf) {
|
| 108 |
var wafToken = await Utils.extractWaf();
|
| 109 |
if (wafToken) {
|
| 110 |
-
// 更新当前token的aws_waf_token
|
| 111 |
Tokens[currentIndex].aws_waf_token = wafToken;
|
| 112 |
-
// 立即更新缓存headers
|
| 113 |
await this.updateCacheTokens();
|
| 114 |
-
// 更新Redis存储
|
| 115 |
await this.updateRedisTokens();
|
| 116 |
-
console.log("✅
|
| 117 |
currentIndex = (currentIndex + 1) % Tokens.length;
|
| 118 |
-
|
| 119 |
-
console.log("❌ 提取aws-waf-token失败,切换账号");
|
| 120 |
-
currentIndex = (currentIndex + 1) % Tokens.length;
|
| 121 |
-
await this.updateCacheTokens();
|
| 122 |
}
|
|
|
|
|
|
|
|
|
|
|
|
|
| 123 |
} else {
|
| 124 |
const newCsrfToken = response.headers.get('anti-csrftoken-a2z');
|
| 125 |
const cookies = response.headers.get('set-cookie');
|
|
@@ -625,10 +623,12 @@ app.post('/hf/v1/chat/completions', async (req, res) => {
|
|
| 625 |
await tokenManager.updateTokens(response);
|
| 626 |
throw new Error(`请求失败! status: ${response.statusText},已刷新验证信息,请重新请求`);
|
| 627 |
case 403:
|
| 628 |
-
|
| 629 |
-
|
| 630 |
-
|
| 631 |
-
|
|
|
|
|
|
|
| 632 |
default:
|
| 633 |
throw new Error(`请求失败! status: ${response.status}`);
|
| 634 |
}
|
|
|
|
| 107 |
if (isWaf) {
|
| 108 |
var wafToken = await Utils.extractWaf();
|
| 109 |
if (wafToken) {
|
|
|
|
| 110 |
Tokens[currentIndex].aws_waf_token = wafToken;
|
|
|
|
| 111 |
await this.updateCacheTokens();
|
|
|
|
| 112 |
await this.updateRedisTokens();
|
| 113 |
+
console.log("✅ Capsolver方案更新token成功");
|
| 114 |
currentIndex = (currentIndex + 1) % Tokens.length;
|
| 115 |
+
return true;
|
|
|
|
|
|
|
|
|
|
| 116 |
}
|
| 117 |
+
console.log("❌ Capsolver方案失败,直接切换账号");
|
| 118 |
+
currentIndex = (currentIndex + 1) % Tokens.length;
|
| 119 |
+
await this.updateCacheTokens();
|
| 120 |
+
return false;
|
| 121 |
} else {
|
| 122 |
const newCsrfToken = response.headers.get('anti-csrftoken-a2z');
|
| 123 |
const cookies = response.headers.get('set-cookie');
|
|
|
|
| 623 |
await tokenManager.updateTokens(response);
|
| 624 |
throw new Error(`请求失败! status: ${response.statusText},已刷新验证信息,请重新请求`);
|
| 625 |
case 403:
|
| 626 |
+
const success = await tokenManager.updateTokens(response, true);
|
| 627 |
+
if(success) {
|
| 628 |
+
console.log("✅ 验证成功,使用新token重试");
|
| 629 |
+
return retryRequest(); // 需要实现重试逻辑
|
| 630 |
+
}
|
| 631 |
+
throw new Error("验证失败,请更换账号");
|
| 632 |
default:
|
| 633 |
throw new Error(`请求失败! status: ${response.status}`);
|
| 634 |
}
|