chore: add some comment

This commit is contained in:
lyz05
2024-01-09 22:30:39 +08:00
parent 8dc67a084c
commit 8091d4b604
3 changed files with 6 additions and 104 deletions

View File

@@ -2,7 +2,6 @@ const axios = require("axios");
const pako = require("pako");
const {
time_to_second,
make_response,
content_template,
} = require("./utils");
const memory = require("../../utils/memory");

View File

@@ -26,13 +26,16 @@ const apiLimiter = rateLimit({
skip: (request, response) => allowlist.includes(request.ip),
});
// 返回对象{msg: "ok", title: "标题", content: []}
async function build_response(url, req) {
// 循环找最终url
for (let q = new URLSearchParams(URL.parse(url).query); q.has("url");) {
console.log("Redirecting to", url);
url = q.get("url");
q = new URLSearchParams(URL.parse(url).query);
}
console.log("Real url:", url);
// 测试url是否能下载
try {
await axios.get(url, {
headers: { "Accept-Encoding": "gzip,deflate,compress" }
@@ -41,15 +44,18 @@ async function build_response(url, req) {
console.log(e);
return { msg: "传入的链接非法!请检查链接是否能在浏览器正常打开" };
}
// 循环找到对应的解析器
let fc = undefined;
for (let item of list) {
if (url.indexOf(item.domain) !== -1) {
fc = item;
}
}
// 找不到对应的解析器
if (fc === undefined) {
return { "msg": "不支持的视频网址" };
}
// 捕获所有错误并添加日志
let ret;
try {
ret = await fc.work(url);

View File

@@ -1,103 +0,0 @@
const OSS = require("ali-oss");
const path = require("path");
const fastregion = "oss-accelerate";
// 引入环境变量
require("dotenv")
.config({ path: "../.env" });
let client = new OSS({
region: process.env.ALI_OSS_REGION,
accessKeyId: process.env.ALIBABA_CLOUD_ACCESS_KEY_ID,
accessKeySecret: process.env.ALIBABA_CLOUD_ACCESS_KEY_SECRET,
bucket: process.env.OSS_BUCKET,
});
let fastclient = new OSS({
region: fastregion,
accessKeyId: process.env.ALIBABA_CLOUD_ACCESS_KEY_ID,
accessKeySecret: process.env.ALIBABA_CLOUD_ACCESS_KEY_SECRET,
bucket: process.env.OSS_BUCKET,
});
async function get(objname,isFast) {
try {
const result = isFast ? await fastclient.get(objname) : await client.get(objname);
return result.content.toString();
} catch (e) {
console.log(e);
}
}
async function putfile(objname, localfilename, headers) {
try {
const res = await client.put(objname,path.normalize(localfilename),{headers});
return res;
} catch(e) {
console.log(e);
}
}
async function put(objname, content, headers) {
try {
const result = await client.put(objname, new Buffer.from(content), { headers });
return result;
} catch (e) {
console.log(e);
}
}
async function head(objname,isfast) {
try {
const result = isfast ? await fastclient.head(objname) : await client.head(objname);
return result.res.headers;
} catch (e) {
console.log(e);
}
}
async function signurl(objname, isFast) {
try {
let result = isFast ? await fastclient.signatureUrl(objname):await client.signatureUrl(objname);
result = result.replace("http://", "//")
return result;
} catch (e) {
console.log(e);
}
}
async function list(prefix) {
const result = await client.list({
prefix,
});
return result;
}
async function putACL(key,acl = "public-read"){
client.putACL(key,acl);
}
module.exports = {
get,
put,
putfile,
head,
list,
signurl,
putACL
};
async function main() {
get("SUB/database.yaml",true);
put("SUB/test.txt", "中文");
head("SUB/database.yaml",true);
const url = await signurl("SUB/database.yaml", true);
console.log(url)
}
if (!module.parent) {
get("SUB/database.yaml");
put("SUB/test.txt", "中文");
head("SUB/database.yaml");
signurl("SUB/database.yaml", true);
}