add proxy support
This commit is contained in:
@@ -2,6 +2,8 @@ const express = require("express");
|
|||||||
const FormData = require("form-data");
|
const FormData = require("form-data");
|
||||||
const docx = require("docx");
|
const docx = require("docx");
|
||||||
const { v4: uuidv4 } = require("uuid");
|
const { v4: uuidv4 } = require("uuid");
|
||||||
|
const { ProxyAgent } = require("proxy-agent");
|
||||||
|
const agent = new ProxyAgent();
|
||||||
const app = express();
|
const app = express();
|
||||||
const axios = require("axios");
|
const axios = require("axios");
|
||||||
const port = 8080;
|
const port = 8080;
|
||||||
@@ -95,6 +97,7 @@ app.post("/v1/messages", apiKeyAuth, (req, res) => {
|
|||||||
"User-Agent": session.user_agent,
|
"User-Agent": session.user_agent,
|
||||||
"Cookie": session.cookie,
|
"Cookie": session.cookie,
|
||||||
},
|
},
|
||||||
|
httpsAgent: agent,
|
||||||
});
|
});
|
||||||
|
|
||||||
// 试算用户消息长度
|
// 试算用户消息长度
|
||||||
|
|||||||
@@ -13,6 +13,7 @@
|
|||||||
"docx": "^8.5.0",
|
"docx": "^8.5.0",
|
||||||
"express": "^4.19.2",
|
"express": "^4.19.2",
|
||||||
"form-data": "^4.0.0",
|
"form-data": "^4.0.0",
|
||||||
|
"proxy-agent": "^6.4.0",
|
||||||
"uuid": "^9.0.1"
|
"uuid": "^9.0.1"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
call npm install
|
call npm install
|
||||||
set YOUCOM_COOKIE=Your Cookie
|
set PASSWORD=
|
||||||
set USER_AGENT=Your User-Agent
|
set https_proxy=
|
||||||
node index
|
node index
|
||||||
pause
|
pause
|
||||||
@@ -10,20 +10,50 @@
|
|||||||
|
|
||||||
5. 下载或Clone本项目代码,解压
|
5. 下载或Clone本项目代码,解压
|
||||||
|
|
||||||
6. 编辑 `start.bat` 文件,把上面的 Cookie 和 User Agent 粘贴进去
|
6. 编辑 `config.example.js` 文件,把上面的 Cookie 和 User Agent 粘贴进去,如果有多个则按如下格式填入。然后另存为把文件名改为 `config.js`
|
||||||
|
|
||||||
|
```
|
||||||
|
module.exports = {
|
||||||
|
"sessions": [
|
||||||
|
{
|
||||||
|
"user_agent": "...",
|
||||||
|
"cookie": "cookie1"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"user_agent": "...",
|
||||||
|
"cookie": "cookie2"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"user_agent": "...",
|
||||||
|
"cookie": "cookie3"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
```
|
||||||
|
|
||||||
7. (可选)如果需要,您可以仿照第6步在`start.bat`中设定一个名为 "PASSWORD" 的环境变量,并将其用作密码。如果没有定义该环境变量,程序将接受所有传入的请求,而不进行任何身份验证
|
7. (可选)如果需要,您可以仿照第6步在`start.bat`中设定一个名为 "PASSWORD" 的环境变量,并将其用作密码。如果没有定义该环境变量,程序将接受所有传入的请求,而不进行任何身份验证
|
||||||
|
|
||||||
|
(可选)如果需要,可以设置代理。
|
||||||
|
|
||||||
8. 启动 start.bat
|
8. 启动 start.bat
|
||||||
|
|
||||||
9. 酒馆中选择 Claude,反向代理地址填 http://127.0.0.1:8080/v1 **反代密码必须填, 同时打开流式传输**,随便什么都可以(除非你在第7步设置了PASSWORD)。
|
9. 酒馆中选择 Claude,反向代理地址填 http://127.0.0.1:8080/v1 **反代密码必须填, 同时打开流式传输**,随便什么都可以(除非你在第7步设置了PASSWORD)。
|
||||||
|
|
||||||
10. 开始使用。如果失败了/没有结果/403/Warning 就多重试几次。
|
10. 开始使用。如果失败了/没有结果/403/Warning 就多重试几次。
|
||||||
|
|
||||||
|
# 使用代理
|
||||||
|
|
||||||
|
可以使用本地的socks5或http(s)代理。只需在 start.bat 中设置 `https_proxy` 环境变量。
|
||||||
|
|
||||||
|
比如,如要使用 Clash 的默认本地代理,则应设置为 `set https_proxy=http://127.0.0.1:7890`
|
||||||
|
|
||||||
|
欲知详细代理格式,请查阅 https://www.npmjs.com/package/proxy-from-env
|
||||||
|
|
||||||
## 注意事项
|
## 注意事项
|
||||||
|
|
||||||
出现 403 错误请重新抓 COOKIE 或者更换代理出口 IP。
|
出现 403 错误请重新抓 COOKIE 或者更换代理出口 IP。
|
||||||
|
|
||||||
|
|
||||||
# Usage
|
# Usage
|
||||||
|
|
||||||
1. Get a you.com account and subscribe, log in.
|
1. Get a you.com account and subscribe, log in.
|
||||||
@@ -36,9 +66,30 @@
|
|||||||
|
|
||||||
5. Download or Clone the code of this project and unzip it.
|
5. Download or Clone the code of this project and unzip it.
|
||||||
|
|
||||||
6. Edit the `start.bat` file and paste the cookie and User Agent into it.
|
6. Edit `config.example.js` as follow。And save the file as `config.js`
|
||||||
|
|
||||||
|
```
|
||||||
|
module.exports = {
|
||||||
|
"sessions": [
|
||||||
|
{
|
||||||
|
"user_agent": "...",
|
||||||
|
"cookie": "cookie1"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"user_agent": "...",
|
||||||
|
"cookie": "cookie2"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"user_agent": "...",
|
||||||
|
"cookie": "cookie3"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
```
|
||||||
|
|
||||||
7. (Optional) you can set an environment variable named `PASSWORD` in `start.bat`, similar to Step 6, and use it as the password. If this environment variable is not defined, the program will accept all incoming requests without performing any authentication.
|
7. (Optional) you can set an environment variable named `PASSWORD` in `start.bat`, similar to Step 6, and use it as the password. If this environment variable is not defined, the program will accept all incoming requests without performing any authentication.
|
||||||
|
|
||||||
|
(Optional) You can set the proxy in start.bat. See below.
|
||||||
|
|
||||||
8. Start start.bat
|
8. Start start.bat
|
||||||
|
|
||||||
@@ -46,6 +97,10 @@
|
|||||||
|
|
||||||
10. Enjoy it. If it fails/no result/403/Warning, try again.
|
10. Enjoy it. If it fails/no result/403/Warning, try again.
|
||||||
|
|
||||||
|
# Use custom proxy
|
||||||
|
|
||||||
|
Use the `https_proxy` env to set custom proxy. Refer to https://www.npmjs.com/package/proxy-from-env for detail.
|
||||||
|
|
||||||
## Caution
|
## Caution
|
||||||
|
|
||||||
If you get 403 errors, consider getting the cookie again or changing your IP.
|
If you get 403 errors, consider getting the cookie again or changing your IP.
|
||||||
|
|||||||
Reference in New Issue
Block a user