96 lines
4.1 KiB
JavaScript
96 lines
4.1 KiB
JavaScript
const axios = require('axios');
|
||
const qs = require('qs');
|
||
|
||
const BBS_ID_LIST = [356, 888];
|
||
const APP_VERSION = "2.18.0";
|
||
const APP_VERSION_CODE = "37";
|
||
|
||
const HERO_MYS_TOKEN = process.env.HERO_MYS_TOKEN;
|
||
const HERO_MYS_KEY = process.env.HERO_MYS_KEY;
|
||
const HERO_MYS_DEVCODE = process.env.HERO_MYS_DEVCODE;
|
||
const HERO_MYS_RV = process.env.HERO_MYS_RV;
|
||
|
||
function checkParams(token, key, devcode, rv) {
|
||
if (!token || !key || !devcode || !rv) {
|
||
console.log('未设置HERO_MYS_TOKNE、HERO_MYS_KEY、HERO_MYS_RV或HERO_MYS_DEVCODE环境变量,多个使用#分割');
|
||
process.exit(1); // 1 表示退出程序,可以使用其他值表示不同的退出状态
|
||
}
|
||
}
|
||
|
||
async function sign() {
|
||
checkParams(HERO_MYS_TOKEN, HERO_MYS_KEY, HERO_MYS_DEVCODE, HERO_MYS_RV);
|
||
let tokens = HERO_MYS_TOKEN.split('#');
|
||
let keys = HERO_MYS_KEY.split('#');
|
||
let devcodes = HERO_MYS_DEVCODE.split('#');
|
||
let rvs = HERO_MYS_RV.split('#');
|
||
if (tokens.length !== keys.length || tokens.length !== devcodes.length || tokens.length !== rvs.length) {
|
||
console.log('HERO_MYS_TOKNE、HERO_MYS_KEY、HERO_MYS_DEVCODE或HERO_MYS_RV设置错误,数量不一致!');
|
||
process.exit(1);
|
||
}
|
||
// 多账号执行签到
|
||
for (let i = 0; i < tokens.length; i++) {
|
||
try {
|
||
let token = tokens[i];
|
||
let key = keys[i];
|
||
let devcode = devcodes[i];
|
||
let rv = rvs[i];
|
||
let config = {
|
||
method: 'post',
|
||
maxBodyLength: Infinity,
|
||
url: 'https://herobox.yingxiong.com:25362/user/mine',
|
||
headers: {
|
||
'Host': 'herobox.yingxiong.com:25362',
|
||
'log-header': 'I am the log request header.',
|
||
'countrycode': 'CN',
|
||
'devcode': devcode,
|
||
'ip': '192.168.0.107',
|
||
'key': key,
|
||
'lang': 'zh-Hans',
|
||
'model': 'RMX1991',
|
||
'osversion': 'Android',
|
||
'rv': rv,
|
||
'source': 'android',
|
||
'token': token,
|
||
'version': APP_VERSION,
|
||
'versioncode': APP_VERSION_CODE,
|
||
'content-type': 'application/x-www-form-urlencoded',
|
||
'content-length': '10',
|
||
'accept-encoding': 'gzip',
|
||
'user-agent': 'okhttp/3.10.0'
|
||
},
|
||
data: "https://herobox.yingxiong.com/user/mine"
|
||
};
|
||
let userReq = await axios.request(config);
|
||
if (userReq.status !== 200 || userReq.data.code !== 200) {
|
||
console.log("获取用户信息失败或账号失效");
|
||
continue;
|
||
}
|
||
let name = userReq.data.data.mine.userName;
|
||
let uid = userReq.data.data.mine.userId;
|
||
let registerTime = userReq.data.data.mine.registerTime;
|
||
let goldNum = userReq.data.data.mine.goldNum;
|
||
console.log(`账号:${name},摸鱼币:${goldNum}(UID:${uid},注册时间:${registerTime})`);
|
||
for (let bbsId of BBS_ID_LIST) {
|
||
config['url'] = 'https://herobox.yingxiong.com:25362/user/signIn';
|
||
config['data'] = qs.stringify({
|
||
'gameId': bbsId
|
||
});
|
||
let response = await axios.request(config);
|
||
if (response.status === 200 && response.data.code === 200) {
|
||
let continuitySignInDay = response.data.data.continuitySignInDay;
|
||
let totalSignInDay = response.data.data.totalSignInDay;
|
||
console.log(`BBS_ID:${bbsId}签到成功,连续签到${continuitySignInDay},累计签到${totalSignInDay}天`)
|
||
} else if (response.data.code === 10000) {
|
||
console.log(`BBS_ID:${bbsId},${response.data.msg}`);
|
||
} else {
|
||
console.log(`BBS_ID:${bbsId},签到失败`);
|
||
}
|
||
}
|
||
} catch (e) {
|
||
console.log(e.message);
|
||
}
|
||
|
||
}
|
||
}
|
||
|
||
sign().then(r => console.log("Running...")); |