feat(auth): 添加 3xui 登录功能

- 新增 3xuiLogin.js 文件实现登录功能
- 添加 getCookie 函数用于获取登录 Cookie
- 集成 HTTP 实例和表单数据处理
This commit is contained in:
aixianling
2025-02-26 15:38:31 +08:00
parent b958beaf2f
commit f4057ae956
2 changed files with 19 additions and 1 deletions

1
app.js
View File

@@ -53,7 +53,6 @@ const loadAPIRoutes = (baseDir = 'api', baseRoute = '/api') => {
// 初始化扫描
scanDirectory(path.join(__dirname, baseDir), baseRoute);
};
// 公开路由
router.get("/public", (ctx) => {
ctx.body = "Public content";

19
auth/3xuiLogin.js Normal file
View File

@@ -0,0 +1,19 @@
const instance = require("../utils/http");
function getCookie() {
const formData = new FormData();
formData.append("username", "lsw");
formData.append("password", "lsw@2024");
formData.append("loginSecret", "IEuVG4csTWLuaq3ysuUSHdwOcnoQRfScURwJVBjCMjRRpjVyYhWcgaHIJvU0SV4P");
return instance
.post("/login", formData, {
maxRedirects: 0, // 禁止自动重定向以保留Cookie
withCredentials: true, // 确保携带凭证
})
.then((res) => {
const rawCookies = res.headers["set-cookie"] || [];
const cookies =["lang=zh-CN",rawCookies.at(-1)?.split(";")[0]].join(";");
return cookies;
});
}
module.exports = getCookie;