JD: BoxJs加入"禁用某接口"选项

This commit is contained in:
NobyDa 2020-07-18 20:54:56 +08:00
parent ca6f90f55c
commit 8ea3032d39
2 changed files with 68 additions and 67 deletions

View File

@ -2,7 +2,7 @@
京东多合一签到脚本
更新时间: 2020.7.16 22:50 v1.28
更新时间: 2020.7.18 17:20 v1.29
有效接口: 24+
脚本兼容: QuantumultX, Surge, Loon, JSBox, Node.js
电报频道: @NobyDa
@ -109,7 +109,6 @@ async function all() {
JDFlashSale(stop), //京东闪购
JDOverseas(stop), //京东国际
JingDongCash(stop), //京东现金红包
// JingRSeeAds(stop), //金融看广告
JDMagicCube(stop), //京东小魔方
JingDongPrize(stop), //京东抽大奖
JingDongSubsidy(stop), //京东金贴
@ -146,7 +145,6 @@ async function all() {
await JDUserSignPre(stop, 'JDVege', '京东商城-菜场'); //京东菜场
await JingDongCash(stop); //京东现金红包
await JDUserSignPre(stop, 'JDFood', '京东商城-美食'); //京东美食馆
// await JingRSeeAds(stop); //金融看广告
await JDUserSignPre(stop, 'JDClean', '京东商城-清洁'); //京东清洁馆
await JDUserSignPre(stop, 'JDCare', '京东商城-个护'); //京东个人护理馆
await JDUserSignPre(stop, 'JDJewels', '京东商城-珠宝'); //京东珠宝馆
@ -307,6 +305,7 @@ function double() {
function JingDongBean(s) {
return new Promise(resolve => {
if (disable("JDBean")) return resolve()
setTimeout(() => {
const JDBUrl = {
url: 'https://api.m.jd.com/client.action?functionId=signBeanIndex&appid=ld',
@ -381,6 +380,7 @@ function JingDongBean(s) {
function JingDongTurn(s) {
return new Promise(resolve => {
if (disable("JDTurn")) return resolve()
setTimeout(() => {
const JDTUrl = {
url: 'https://api.m.jd.com/client.action?functionId=lotteryDraw&body=%7B%22actId%22%3A%22jgpqtzjhvaoym%22%2C%22appSource%22%3A%22jdhome%22%2C%22lotteryCode%22%3A%224wwzdq7wkqx2usx4g5i2nu5ho4auto4qxylblkxacm7jqdsltsepmgpn3b2hgyd7hiawzpccizuck%22%7D&appid=ld',
@ -448,6 +448,7 @@ function JingDongTurn(s) {
function JingRongBean(s) {
return new Promise(resolve => {
if (disable("JRBean")) return resolve()
setTimeout(() => {
const login = {
url: 'https://ms.jr.jd.com/gw/generic/zc/h5/m/signRecords',
@ -549,6 +550,7 @@ function JRBeanCheckin(s) {
function JingRongSteel(s) {
return new Promise(resolve => {
if (disable("JRSteel")) return resolve()
setTimeout(() => {
const JRSUrl = {
url: 'https://ms.jr.jd.com/gw/generic/gry/h5/m/signIn',
@ -612,6 +614,7 @@ function JingRongSteel(s) {
function JRDoubleSign(s) {
return new Promise(resolve => {
if (disable("JRDSign")) return resolve()
setTimeout(() => {
const JRDSUrl = {
url: 'https://nu.jr.jd.com/gw/generic/jrm/h5/m/process?',
@ -668,6 +671,7 @@ function JRDoubleSign(s) {
function JingDongShake(s) {
return new Promise(resolve => {
if (disable("JDShake")) return resolve()
setTimeout(() => {
const JDSh = {
url: 'https://api.m.jd.com/client.action?appid=vip_h5&functionId=vvipclub_shaking',
@ -746,6 +750,7 @@ function JDUserSignPre(s, key, title) {
function JDUserSignPre1(s, key, title) {
return new Promise((resolve, reject) => {
if (disable(key)) return reject()
//setTimeout(() => {
const JDUrl = {
url: 'https://api.m.jd.com/?client=wh5&functionId=qryH5BabelFloors',
@ -804,6 +809,7 @@ function JDUserSignPre1(s, key, title) {
function JDUserSignPre2(s, key, title) {
return new Promise((resolve, reject) => {
if (disable(key)) return reject()
//setTimeout(() => {
const JDUrl = {
url: `https://pro.m.jd.com/mall/active/${acData[key]}/index.html`,
@ -901,6 +907,7 @@ function JDUserSign(s, key, title, body) {
function JDFlashSale(s) {
return new Promise(resolve => {
if (disable("JDFSale")) return resolve()
setTimeout(() => {
const JDPETUrl = {
url: 'https://api.m.jd.com/client.action?functionId=partitionJdSgin',
@ -1024,6 +1031,7 @@ function FlashSaleDivide(s) {
function JingDongCash(s) {
return new Promise(resolve => {
if (disable("JDCash")) return resolve()
setTimeout(() => {
const JDCAUrl = {
url: 'https://api.m.jd.com/client.action?functionId=ccSignInNew',
@ -1083,69 +1091,9 @@ function JingDongCash(s) {
});
}
function JingRSeeAds(s) {
return new Promise(resolve => {
setTimeout(() => {
const JRAdsUrl = {
url: 'https://ms.jr.jd.com/gw/generic/jrm/h5/m/sendAdGb',
headers: {
"Content-Type": "application/x-www-form-urlencoded",
Cookie: KEY,
},
body: "reqData=%7B%22clientType%22%3A%22ios%22%2C%22actKey%22%3A%22176696%22%2C%22userDeviceInfo%22%3A%7B%22adId%22%3A9999999%7D%2C%22deviceInfoParam%22%3A%7B%22macAddress%22%3A%2202%3A00%3A00%3A00%3A00%3A00%22%2C%22channelInfo%22%3A%22appstore%22%2C%22IPAddress1%22%3A%22%22%2C%22OpenUDID%22%3A%22%22%2C%22clientVersion%22%3A%225.3.30%22%2C%22terminalType%22%3A%2202%22%2C%22osVersion%22%3A%22%22%2C%22appId%22%3A%22com.jd.jinrong%22%2C%22deviceType%22%3A%22iPhone8%2C2%22%2C%22networkType%22%3A%22%22%2C%22startNo%22%3A212%2C%22UUID%22%3A%22%22%2C%22IPAddress%22%3A%22%22%2C%22deviceId%22%3A%22%22%2C%22IDFA%22%3A%22%22%2C%22resolution%22%3A%22%22%2C%22osPlatform%22%3A%22iOS%22%7D%2C%22bussource%22%3A%22%22%7D"
};
$nobyda.post(JRAdsUrl, function(error, response, data) {
try {
if (error) {
merge.JRSeeAds.notify = "京东金融-广告: 签到接口请求失败 ‼️‼️"
merge.JRSeeAds.fail = 1
} else {
const Details = LogDetails ? "response:\n" + data : '';
const cc = JSON.parse(data)
if (data.match(/(\"canGetGb\":true)/)) {
console.log("\n" + "京东金融-广告签到成功 " + Details)
if (data.match(/(\"volumn\"|\"volume\")/)) {
merge.JRSeeAds.notify = "京东金融-广告: 成功, 明细: " + cc.resultData.data.volumn + "京豆 🐶"
merge.JRSeeAds.bean = cc.resultData.data.volumn
merge.JRSeeAds.success = 1
} else {
merge.JRSeeAds.notify = "京东金融-广告: 成功, 明细: 无京豆 🐶"
merge.JRSeeAds.success = 1
}
} else {
console.log("\n" + "京东金融-广告签到失败 " + Details)
if (data.match(/(已经发完|已签到|已领取|\"code\":\"2000\")/)) {
merge.JRSeeAds.notify = "京东金融-广告: 失败, 原因: 已签过 ⚠️"
merge.JRSeeAds.fail = 1
} else {
if (data.match(/(不存在|已结束|未找到)/)) {
merge.JRSeeAds.notify = "京东金融-广告: 失败, 原因: 活动已结束 ⚠️"
merge.JRSeeAds.fail = 1
} else {
if (data.match(/(\"resultCode\":3|先登录)/)) {
merge.JRSeeAds.notify = "京东金融-广告: 失败, 原因: Cookie失效‼"
merge.JRSeeAds.fail = 1
} else {
merge.JRSeeAds.notify = "京东金融-广告: 失败, 原因: 未开始 ⚠️"
merge.JRSeeAds.fail = 1
}
}
}
}
}
} catch (eor) {
$nobyda.notify("京东金融-广告" + eor.name + "‼️", JSON.stringify(eor), eor.message)
} finally {
resolve()
}
})
}, s)
if (out) setTimeout(resolve, out + s)
});
}
function JDMagicCube(s) {
return new Promise(resolve => {
if (disable("JDCube")) return resolve()
setTimeout(() => {
const JDMCUrl = {
url: 'https://api.m.jd.com/client.action?functionId=getNewsInteractionLotteryInfo&appid=smfe',
@ -1205,6 +1153,7 @@ function JDMagicCube(s) {
function JingDongPrize(s) {
return new Promise(resolve => {
if (disable("JDPrize")) return resolve()
setTimeout(() => {
const JDkey = {
url: 'https://api.m.jd.com/client.action?functionId=vvipscdp_raffleAct_index&client=apple&clientVersion=8.1.0&appid=member_benefit_m',
@ -1320,6 +1269,7 @@ function JDPrizeCheckin(s) {
function JingDongSpeedUp(s, id) {
return new Promise(resolve => {
if (disable("SpeedUp")) return resolve()
setTimeout(() => {
const GameUrl = {
url: 'https://api.m.jd.com/?appid=memberTaskCenter&functionId=flyTask_' + (id ? 'start&body=%7B%22source%22%3A%22game%22%2C%22source_id%22%3A' + id + '%7D' : 'state&body=%7B%22source%22%3A%22game%22%7D'),
@ -1579,6 +1529,7 @@ function JDUseProps(s, PropID) {
function JingDongSubsidy(s) {
return new Promise(resolve => {
if (disable("subsidy")) return resolve()
setTimeout(() => {
const subsidyUrl = {
url: 'https://ms.jr.jd.com/gw/generic/uc/h5/m/signIn7',
@ -1628,6 +1579,7 @@ function JingDongSubsidy(s) {
function JingRongDoll(s, type, num) {
return new Promise(resolve => {
if (disable("JRDoll")) return resolve()
setTimeout(() => {
const DollUrl = {
url: "https://nu.jr.jd.com/gw/generic/jrm/h5/m/process",
@ -1694,6 +1646,7 @@ function JingRongDoll(s, type, num) {
function JDOverseas(s) {
return new Promise(resolve => {
if (disable("Overseas")) return resolve()
setTimeout(() => {
const OverseasUrl = {
url: 'https://api.m.jd.com/client.action?functionId=checkin',
@ -1744,6 +1697,7 @@ function JDOverseas(s) {
function TotalSteel() {
return new Promise(resolve => {
if (disable("TSteel")) return resolve()
const SteelUrl = {
url: 'https://coin.jd.com/m/gb/getBaseInfo.html',
headers: {
@ -1776,6 +1730,7 @@ function TotalSteel() {
function TotalBean() {
return new Promise(resolve => {
if (disable("Qbear")) return resolve()
const BeanUrl = {
url: 'https://wq.jd.com/user/info/QueryJDUserInfo?sceneval=2',
headers: {
@ -1816,6 +1771,7 @@ function TotalBean() {
function TotalCash() {
return new Promise(resolve => {
if (disable("TCash")) return resolve()
const CashUrl = {
url: 'https://api.m.jd.com/client.action?functionId=myhongbao_balance',
headers: {
@ -1848,6 +1804,14 @@ function TotalCash() {
});
}
function disable(name) {
const read = $nobyda.read("JD_DailyBonusDisable")
if (read === "" || read && read.indexOf(name) == -1) {
return true
} else {
return false
}
}
function initial() {
acData = {
@ -1890,7 +1854,6 @@ function initial() {
JDMakeup: {},
Overseas: {},
JDWomen: {},
JRSeeAds: {},
JDCare: {},
JDFood: {},
JDClean: {},
@ -1954,6 +1917,8 @@ function GetCookie() {
} else {
$nobyda.notify("用户名: " + DecodeName, "", "更新京东" + CookieName + "Cookie成功 🎉");
}
} else {
console.log("京东: \n与历史Cookie相同, 跳过写入")
}
} else {
var cookie = $nobyda.write(CookieValue, CookieKey);

View File

@ -14,18 +14,54 @@
"val": false,
"type": "boolean",
"desc": ""
}, {
"id": "JD_DailyBonusDisable",
"name": "签到接口启用",
"val": ["SpeedUp", "JDBean", "JRBean", "JRDoll", "JRSteel", "JDTurn", "JDGStore", "JDPet", "JDFSale", "Overseas", "JDBook", "JDShand", "JDMakeup", "JDWomen", "JDVege", "JDCash", "JDFood", "JDClean", "JDCare", "JDJewels", "JDCube", "JDPrize", "subsidy", "JDShake", "JRDSign", "Qbear", "TCash", "TSteel"],
"type": "checkboxes",
"desc": "",
"items": [
{"key": "SpeedUp","label": "天天加速"},
{"key": "JDBean","label": "京东京豆"},
{"key": "JRBean","label": "金融京豆"},
{"key": "JRDoll","label": "金融娃娃"},
{"key": "JRSteel","label": "金融钢镚"},
{"key": "JDTurn","label": "京东转盘"},
{"key": "JDGStore","label": "京东超市"},
{"key": "JDPet","label": "京东宠物"},
{"key": "JDFSale","label": "京东闪购"},
{"key": "Overseas","label": "京东国际"},
{"key": "JDBook","label": "京东图书"},
{"key": "JDShand","label": "京东二手"},
{"key": "JDMakeup","label": "京东美妆"},
{"key": "JDWomen","label": "京东女装"},
{"key": "JDVege","label": "京东菜场"},
{"key": "JDCash","label": "京东红包"},
{"key": "JDFood","label": "京东美食"},
{"key": "JDClean","label": "京东清洁"},
{"key": "JDCare","label": "京东个护"},
{"key": "JDJewels","label": "京东珠宝 (如VPN重启,建议禁用)"},
{"key": "JDCube","label": "京东魔方"},
{"key": "JDPrize","label": "京东大奖"},
{"key": "JRDSign","label": "金融双签"},
{"key": "subsidy","label": "京东金贴"},
{"key": "JDShake","label": "京东摇一摇"},
{"key": "Qbear","label": "总京豆查询"},
{"key": "TCash","label": "总红包查询"},
{"key": "TSteel","label": "总钢镚查询"}
]
}, {
"id": "JD_DailyBonusTimeOut",
"name": "超时退出 (毫秒)",
"val": "",
"type": "text",
"type": "number",
"placeholder": "默认无超时 (点击以展开说明)",
"desc": "按需填写, 用于由网络不稳定引起的脚本中断, 正常或越狱用户建议留空. 如QX日志出现大量\"JS Context timeout\"后脚本中断时, 建议填写6000"
}, {
"id": "JD_DailyBonusDelay",
"name": "接口延迟 (毫秒)",
"val": "",
"type": "text",
"type": "number",
"placeholder": "默认并发无延迟 (点击以展开说明)",
"desc": "延迟作用于每个签到接口, 如填入延迟则切换顺序签到(耗时较长), VPN重启或越狱用户建议填写1, Surge用户请注意在SurgeUI界面调整脚本超时"
}],