yxmiler commited on
Commit
8f6f0ea
·
verified ·
1 Parent(s): 0a79c1e

Update index.js

Browse files
Files changed (1) hide show
  1. index.js +9 -18
index.js CHANGED
@@ -73,9 +73,8 @@ async function initialization() {
73
  return;
74
  }
75
  const ssoArray = process.env.SSO.split(',');
76
- const ssorwArray = process.env.SSO_RW.split(',');
77
- ssoArray.forEach((sso, index) => {
78
- tokenManager.addToken(`sso-rw=${ssorwArray[index]};sso=${sso}`);
79
  });
80
  console.log(JSON.stringify(tokenManager.getActiveTokens(), null, 2));
81
  await Utils.get_signature()
@@ -215,7 +214,6 @@ class Utils {
215
  static async extractGrokHeaders() {
216
  Logger.info("开始提取头信息", 'Server');
217
  try {
218
- // 启动浏览器
219
  const browser = await puppeteer.launch({
220
  headless: true,
221
  args: [
@@ -236,16 +234,12 @@ class Utils {
236
  const cookies = await page.cookies();
237
  const targetHeaders = ['x-anonuserid', 'x-challenge', 'x-signature'];
238
  const extractedHeaders = {};
239
- // 遍历 Cookies
240
  for (const cookie of cookies) {
241
- // 检查是否为目标头信息
242
  if (targetHeaders.includes(cookie.name.toLowerCase())) {
243
  extractedHeaders[cookie.name.toLowerCase()] = cookie.value;
244
  }
245
  }
246
- // 关闭浏览器
247
  await browser.close();
248
- // 打印并返回提取的头信息
249
  Logger.info('提取的头信息:', JSON.stringify(extractedHeaders, null, 2), 'Server');
250
  return extractedHeaders;
251
 
@@ -724,6 +718,7 @@ async function handleImageResponse(imageUrl) {
724
  return `![image](data:${imageContentType};base64,${base64Image})`
725
  }
726
 
 
727
  const formData = new FormData();
728
  if(CONFIG.API.PICGO_KEY){
729
  formData.append('source', imageBuffer, {
@@ -754,7 +749,7 @@ async function handleImageResponse(imageUrl) {
754
  contentType: 'image/jpeg'
755
  });
756
  const formDataHeaders = formData.getHeaders();
757
- const responseURL = await fetch("https://picui.cn/api/v1/upload", {
758
  method: "POST",
759
  headers: {
760
  ...formDataHeaders,
@@ -804,15 +799,11 @@ app.post('/hf/v1/chat/completions', async (req, res) => {
804
  try {
805
  const authToken = req.headers.authorization?.replace('Bearer ', '');
806
  if (CONFIG.API.IS_CUSTOM_SSO) {
807
- if (authToken && authToken.includes(';')) {
808
- const parts = authToken.split(';');
809
- const result = [
810
- `sso=${parts[0]}`,
811
- `ssp_rw=${parts[1]}`
812
- ].join(';');
813
  tokenManager.setToken(result);
814
  } else {
815
- return res.status(401).json({ error: '自定义的SSO令牌格式错误' });
816
  }
817
  } else if (authToken !== CONFIG.API.API_KEY) {
818
  return res.status(401).json({ error: 'Unauthorized' });
@@ -836,7 +827,7 @@ app.post('/hf/v1/chat/completions', async (req, res) => {
836
  CONFIG.API.SIGNATURE_COOKIE = await Utils.createAuthHeaders(req.body.model);
837
  }
838
  if (!CONFIG.API.SIGNATURE_COOKIE) {
839
- throw new Error('无可用令牌');
840
  }
841
  Logger.info(`当前令牌索引: ${CONFIG.SSO_INDEX}`, 'Server');
842
  Logger.info(`当前令牌: ${JSON.stringify(CONFIG.API.SIGNATURE_COOKIE,null,2)}`, 'Server');
@@ -859,7 +850,7 @@ app.post('/hf/v1/chat/completions', async (req, res) => {
859
  const responseText = await newMessageReq.json();
860
  conversationId = responseText.conversationId;
861
  } else {
862
- Logger.error(`创建会话请求: ${responseText2}`, 'Server');
863
  throw new Error(`创建会话响应错误: ${responseText2}`);
864
  }
865
 
 
73
  return;
74
  }
75
  const ssoArray = process.env.SSO.split(',');
76
+ ssoArray.forEach((sso) => {
77
+ tokenManager.addToken(`sso-rw=${sso};sso=${sso}`);
 
78
  });
79
  console.log(JSON.stringify(tokenManager.getActiveTokens(), null, 2));
80
  await Utils.get_signature()
 
214
  static async extractGrokHeaders() {
215
  Logger.info("开始提取头信息", 'Server');
216
  try {
 
217
  const browser = await puppeteer.launch({
218
  headless: true,
219
  args: [
 
234
  const cookies = await page.cookies();
235
  const targetHeaders = ['x-anonuserid', 'x-challenge', 'x-signature'];
236
  const extractedHeaders = {};
 
237
  for (const cookie of cookies) {
 
238
  if (targetHeaders.includes(cookie.name.toLowerCase())) {
239
  extractedHeaders[cookie.name.toLowerCase()] = cookie.value;
240
  }
241
  }
 
242
  await browser.close();
 
243
  Logger.info('提取的头信息:', JSON.stringify(extractedHeaders, null, 2), 'Server');
244
  return extractedHeaders;
245
 
 
718
  return `![image](data:${imageContentType};base64,${base64Image})`
719
  }
720
 
721
+ Logger.info("开始请求图床", 'Server');
722
  const formData = new FormData();
723
  if(CONFIG.API.PICGO_KEY){
724
  formData.append('source', imageBuffer, {
 
749
  contentType: 'image/jpeg'
750
  });
751
  const formDataHeaders = formData.getHeaders();
752
+ const responseURL = await fetch("https://tu.my/api/v1/upload", {
753
  method: "POST",
754
  headers: {
755
  ...formDataHeaders,
 
799
  try {
800
  const authToken = req.headers.authorization?.replace('Bearer ', '');
801
  if (CONFIG.API.IS_CUSTOM_SSO) {
802
+ if (authToken) {
803
+ const result = `sso=${authToken};ssp_rw=${authToken}`;
 
 
 
 
804
  tokenManager.setToken(result);
805
  } else {
806
+ return res.status(401).json({ error: '自定义的SSO令牌缺失' });
807
  }
808
  } else if (authToken !== CONFIG.API.API_KEY) {
809
  return res.status(401).json({ error: 'Unauthorized' });
 
827
  CONFIG.API.SIGNATURE_COOKIE = await Utils.createAuthHeaders(req.body.model);
828
  }
829
  if (!CONFIG.API.SIGNATURE_COOKIE) {
830
+ throw new Error('该模型无可用令牌');
831
  }
832
  Logger.info(`当前令牌索引: ${CONFIG.SSO_INDEX}`, 'Server');
833
  Logger.info(`当前令牌: ${JSON.stringify(CONFIG.API.SIGNATURE_COOKIE,null,2)}`, 'Server');
 
850
  const responseText = await newMessageReq.json();
851
  conversationId = responseText.conversationId;
852
  } else {
853
+ Logger.error(`创建会话响应错误: ${responseText2}`, 'Server');
854
  throw new Error(`创建会话响应错误: ${responseText2}`);
855
  }
856