Update index.js
Browse files
index.js
CHANGED
|
@@ -109,15 +109,14 @@ class TokenManager {
|
|
| 109 |
if (wafToken) {
|
| 110 |
Tokens[currentIndex].aws_waf_token = wafToken;
|
| 111 |
await this.updateCacheTokens();
|
| 112 |
-
|
| 113 |
-
console.log("✅ Capsolver方案更新token成功");
|
| 114 |
currentIndex = (currentIndex + 1) % Tokens.length;
|
| 115 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
| 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');
|
|
@@ -236,18 +235,6 @@ class Utils {
|
|
| 236 |
timeout: 30000
|
| 237 |
});
|
| 238 |
|
| 239 |
-
// 修改后 (兼容所有版本)
|
| 240 |
-
await new Promise(resolve => setTimeout(resolve, 2000)); // 替代 waitForTimeout
|
| 241 |
-
try {
|
| 242 |
-
await page.waitForFunction(
|
| 243 |
-
() => !document.querySelector('.aws-waf-challenge:not([hidden])'),
|
| 244 |
-
{ timeout: 15000 }
|
| 245 |
-
);
|
| 246 |
-
console.log("✅ 验证挑战已完成");
|
| 247 |
-
} catch (error) {
|
| 248 |
-
console.error("❌ 验证挑战超时:", error);
|
| 249 |
-
}
|
| 250 |
-
|
| 251 |
// 获取最终token
|
| 252 |
const awsWafToken = (await page.cookies()).find(
|
| 253 |
cookie => cookie.name.toLowerCase() === 'aws-waf-token'
|
|
@@ -631,12 +618,10 @@ app.post('/hf/v1/chat/completions', async (req, res) => {
|
|
| 631 |
await tokenManager.updateTokens(response);
|
| 632 |
throw new Error(`请求失败! status: ${response.statusText},已刷新验证信息,请重新请求`);
|
| 633 |
case 403:
|
| 634 |
-
|
| 635 |
-
|
| 636 |
-
|
| 637 |
-
|
| 638 |
-
}
|
| 639 |
-
throw new Error("验证失败,请更换账号");
|
| 640 |
default:
|
| 641 |
throw new Error(`请求失败! status: ${response.status}`);
|
| 642 |
}
|
|
|
|
| 109 |
if (wafToken) {
|
| 110 |
Tokens[currentIndex].aws_waf_token = wafToken;
|
| 111 |
await this.updateCacheTokens();
|
| 112 |
+
this.updateRedisTokens();
|
|
|
|
| 113 |
currentIndex = (currentIndex + 1) % Tokens.length;
|
| 114 |
+
console.log("成功提取 aws-waf-token");
|
| 115 |
+
} else {
|
| 116 |
+
currentIndex = (currentIndex + 1) % Tokens.length;
|
| 117 |
+
await this.updateCacheTokens();
|
| 118 |
+
console.log("提取aws-waf-token失败");
|
| 119 |
}
|
|
|
|
|
|
|
|
|
|
|
|
|
| 120 |
} else {
|
| 121 |
const newCsrfToken = response.headers.get('anti-csrftoken-a2z');
|
| 122 |
const cookies = response.headers.get('set-cookie');
|
|
|
|
| 235 |
timeout: 30000
|
| 236 |
});
|
| 237 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 238 |
// 获取最终token
|
| 239 |
const awsWafToken = (await page.cookies()).find(
|
| 240 |
cookie => cookie.name.toLowerCase() === 'aws-waf-token'
|
|
|
|
| 618 |
await tokenManager.updateTokens(response);
|
| 619 |
throw new Error(`请求失败! status: ${response.statusText},已刷新验证信息,请重新请求`);
|
| 620 |
case 403:
|
| 621 |
+
console.log("请求被阻止");
|
| 622 |
+
await tokenManager.updateTokens(response, true);//尝试获取waf,然后返回错误提示。
|
| 623 |
+
CONFIG.DEFAULT_HEADERS["User-Agent"] = await Utils.getRandomUserAgent();
|
| 624 |
+
throw new Error(`请求失败! status: ${response.statusText},请重新请求,如果多次失败,请重新更换token`);
|
|
|
|
|
|
|
| 625 |
default:
|
| 626 |
throw new Error(`请求失败! status: ${response.status}`);
|
| 627 |
}
|