mirror of
https://github.com/fmz200/wool_scripts.git
synced 2025-12-20 13:43:58 +08:00
Initial commit: new history
This commit is contained in:
265
Scripts/qinglong/api.js
Normal file
265
Scripts/qinglong/api.js
Normal file
@ -0,0 +1,265 @@
|
||||
'use strict';
|
||||
|
||||
const got = require('got');
|
||||
require('dotenv').config();
|
||||
const {readFile} = require('fs/promises');
|
||||
const fs = require('fs');
|
||||
let fileExists = fs.existsSync('/ql/data/config/auth.json');
|
||||
let authFile = "";
|
||||
if (fileExists)
|
||||
authFile = "/ql/data/config/auth.json"
|
||||
else
|
||||
authFile = "/ql/config/auth.json"
|
||||
|
||||
const api = got.extend({
|
||||
prefixUrl: 'http://127.0.0.1:5600',
|
||||
retry: {limit: 0},
|
||||
});
|
||||
|
||||
async function getToken() {
|
||||
const authConfig = JSON.parse(await readFile(authFile));
|
||||
return authConfig.token;
|
||||
}
|
||||
|
||||
module.exports.getEnvsByNameBackUp = async (searchValue) => {
|
||||
const token = await getToken();
|
||||
const body = await api({
|
||||
url: 'api/envs',
|
||||
searchParams: {
|
||||
searchValue: searchValue,
|
||||
t: Date.now(),
|
||||
},
|
||||
headers: {
|
||||
'Accept': 'application/json',
|
||||
'authorization': `Bearer ${token}`,
|
||||
'host': '127.0.0.1',
|
||||
'user-agent': 'Mozilla/5.0 (iPhone; CPU iPhone OS 13_2_3 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/13.0.3 Mobile/15E148 Safari/604.1'
|
||||
},
|
||||
}).json();
|
||||
return body.data;
|
||||
};
|
||||
|
||||
module.exports.getEnvsByName = async (searchValue) => {
|
||||
const token = await getToken();
|
||||
const url = `http://127.0.0.1:5600/api/envs?searchValue=${searchValue}&t=` + Date.now();
|
||||
const headers = {
|
||||
"Accept": "application/json",
|
||||
"authorization": `Bearer ${token}`,
|
||||
"Content-Type": "application/json;charset=UTF-8",
|
||||
"host": "127.0.0.1",
|
||||
"user-agent": "Mozilla/5.0 (iPhone; CPU iPhone OS 13_2_3 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/13.0.3 Mobile/15E148 Safari/604.1"
|
||||
}
|
||||
const request = {
|
||||
method: "get",
|
||||
headers: headers
|
||||
}
|
||||
console.log("url=" + url);
|
||||
console.log("request=" + JSON.stringify(request));
|
||||
fetch(url, request)
|
||||
.then(response => {
|
||||
console.log(response.status + "\n\n" + response.statusText);
|
||||
return response.text();
|
||||
})
|
||||
.then(body => {
|
||||
console.log(body);
|
||||
})
|
||||
.catch(error => {
|
||||
console.log(error);
|
||||
});
|
||||
};
|
||||
|
||||
module.exports.getEnvsCount = async () => {
|
||||
const data = await this.getEnvsByName();
|
||||
return data.length;
|
||||
};
|
||||
|
||||
module.exports.addEnv = async (cookie, remarks) => {
|
||||
const token = await getToken();
|
||||
return await api({
|
||||
method: 'post',
|
||||
url: 'api/envs',
|
||||
params: {t: Date.now()},
|
||||
json: [{
|
||||
name: 'JD_COOKIE',
|
||||
value: cookie,
|
||||
remarks,
|
||||
}],
|
||||
headers: {
|
||||
Accept: 'application/json',
|
||||
authorization: `Bearer ${token}`,
|
||||
'Content-Type': 'application/json;charset=UTF-8',
|
||||
},
|
||||
}).json();
|
||||
};
|
||||
|
||||
module.exports.updateEnv = async (value, eid, remarks) => {
|
||||
const token = await getToken();
|
||||
const body = await api({
|
||||
method: 'put',
|
||||
url: 'api/envs',
|
||||
params: {t: Date.now()},
|
||||
json: {
|
||||
name: 'JD_COOKIE',
|
||||
value: value,
|
||||
_id: eid,
|
||||
remarks,
|
||||
},
|
||||
headers: {
|
||||
Accept: 'application/json',
|
||||
authorization: `Bearer ${token}`,
|
||||
'Content-Type': 'application/json;charset=UTF-8',
|
||||
},
|
||||
}).json();
|
||||
return body;
|
||||
};
|
||||
|
||||
module.exports.updateEnvByIdBackUp = async (name, value, eid, remarks) => {
|
||||
const token = await getToken();
|
||||
return await api({
|
||||
method: 'put',
|
||||
url: 'api/envs',
|
||||
params: {t: Date.now()},
|
||||
json: {
|
||||
name: name,
|
||||
value: value,
|
||||
id: eid,
|
||||
remarks,
|
||||
},
|
||||
headers: {
|
||||
Accept: 'application/json',
|
||||
authorization: `Bearer ${token}`,
|
||||
'Content-Type': 'application/json;charset=UTF-8',
|
||||
},
|
||||
}).json();
|
||||
};
|
||||
|
||||
// id是必传字段,否则青龙会报错
|
||||
module.exports.updateEnvById = async (id, name, value, remarks) => {
|
||||
const token = await getToken();
|
||||
const url = "http://127.0.0.1:5600/api/envs?t=" + Date.now();
|
||||
const headers = {
|
||||
"Accept": "application/json",
|
||||
"authorization": `Bearer ${token}`,
|
||||
"Content-Type": "application/json;charset=UTF-8",
|
||||
"host": "127.0.0.1",
|
||||
"user-agent": "Mozilla/5.0 (iPhone; CPU iPhone OS 13_2_3 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/13.0.3 Mobile/15E148 Safari/604.1"
|
||||
}
|
||||
const body = {
|
||||
"id": id,
|
||||
"name": name,
|
||||
"value": value,
|
||||
"remarks": remarks
|
||||
};
|
||||
const request = {
|
||||
method: "put",
|
||||
headers: headers,
|
||||
body: JSON.stringify(body)
|
||||
}
|
||||
console.log("request=" + JSON.stringify(request));
|
||||
fetch(url, request)
|
||||
.then(response => {
|
||||
console.log(response.status + "\n\n" + response.statusText);
|
||||
return response.text();
|
||||
})
|
||||
.then(body => {
|
||||
console.log(body);
|
||||
})
|
||||
.catch(error => {
|
||||
console.log(error);
|
||||
});
|
||||
};
|
||||
|
||||
module.exports.DisableCk = async (eid) => {
|
||||
const token = await getToken();
|
||||
const body = await api({
|
||||
method: 'put',
|
||||
url: 'api/envs/disable',
|
||||
params: {t: Date.now()},
|
||||
body: JSON.stringify([eid]),
|
||||
headers: {
|
||||
Accept: 'application/json',
|
||||
authorization: `Bearer ${token}`,
|
||||
'Content-Type': 'application/json;charset=UTF-8',
|
||||
},
|
||||
}).json();
|
||||
return body;
|
||||
};
|
||||
|
||||
module.exports.EnableCk = async (eid) => {
|
||||
const token = await getToken();
|
||||
const body = await api({
|
||||
method: 'put',
|
||||
url: 'api/envs/enable',
|
||||
params: {t: Date.now()},
|
||||
body: JSON.stringify([eid]),
|
||||
headers: {
|
||||
Accept: 'application/json',
|
||||
authorization: `Bearer ${token}`,
|
||||
'Content-Type': 'application/json;charset=UTF-8',
|
||||
},
|
||||
}).json();
|
||||
return body;
|
||||
};
|
||||
|
||||
module.exports.getStatus = async (eid) => {
|
||||
const envs = await this.getEnvsByName();
|
||||
var tempid = 0;
|
||||
for (let i = 0; i < envs.length; i++) {
|
||||
tempid = 0;
|
||||
if (envs[i]._id) {
|
||||
tempid = envs[i]._id;
|
||||
}
|
||||
if (envs[i].id) {
|
||||
tempid = envs[i].id;
|
||||
}
|
||||
if (tempid == eid) {
|
||||
return envs[i].status;
|
||||
}
|
||||
}
|
||||
return 99;
|
||||
};
|
||||
|
||||
module.exports.getEnvById = async (eid) => {
|
||||
const envs = await this.getEnvsByName();
|
||||
var tempid = 0;
|
||||
for (let i = 0; i < envs.length; i++) {
|
||||
tempid = 0;
|
||||
if (envs[i]._id) {
|
||||
tempid = envs[i]._id;
|
||||
}
|
||||
if (envs[i].id) {
|
||||
tempid = envs[i].id;
|
||||
}
|
||||
if (tempid == eid) {
|
||||
return envs[i].value;
|
||||
}
|
||||
}
|
||||
return "";
|
||||
};
|
||||
|
||||
module.exports.getEnvByPtPin = async (Ptpin) => {
|
||||
const envs = await this.getEnvsByName();
|
||||
for (let i = 0; i < envs.length; i++) {
|
||||
var tempptpin = decodeURIComponent(envs[i].value.match(/pt_pin=([^; ]+)(?=;?)/) && envs[i].value.match(/pt_pin=([^; ]+)(?=;?)/)[1]);
|
||||
if (tempptpin == Ptpin) {
|
||||
return envs[i];
|
||||
}
|
||||
}
|
||||
return "";
|
||||
};
|
||||
|
||||
module.exports.delEnv = async (eid) => {
|
||||
const token = await getToken();
|
||||
const body = await api({
|
||||
method: 'delete',
|
||||
url: 'api/envs',
|
||||
params: {t: Date.now()},
|
||||
body: JSON.stringify([eid]),
|
||||
headers: {
|
||||
Accept: 'application/json',
|
||||
authorization: `Bearer ${token}`,
|
||||
'Content-Type': 'application/json;charset=UTF-8',
|
||||
},
|
||||
}).json();
|
||||
return body;
|
||||
};
|
||||
Reference in New Issue
Block a user