137 lines
5.0 KiB
TypeScript
137 lines
5.0 KiB
TypeScript
import axios from "axios";
|
|
import USER_AGENT, {randomWord} from "../TS_USER_AGENTS";
|
|
import {requestAlgo, geth5st} from './V3'
|
|
|
|
async function bean(cookie: string) {
|
|
let {data}: any = await axios.post('https://api.m.jd.com/client.action', `functionId=plantBeanIndex&body=${decodeURIComponent(JSON.stringify({version: "9.0.0.1", "monitor_source": "plant_app_plant_index", "monitor_refer": ""}))}&appid=ld&client=apple&area=5_274_49707_49973&build=167283&clientVersion=9.1.0`, {
|
|
headers: {
|
|
Cookie: cookie,
|
|
Host: "api.m.jd.com",
|
|
"User-Agent": USER_AGENT
|
|
}
|
|
})
|
|
if (data.data?.jwordShareInfo?.shareUrl)
|
|
return data.data?.jwordShareInfo.shareUrl.split('Uuid=')![1]
|
|
else
|
|
return 'null'
|
|
}
|
|
|
|
async function farm(cookie: string) {
|
|
let {data}: any = await axios.post('https://api.m.jd.com/client.action?functionId=initForFarm', `body=${encodeURIComponent(JSON.stringify({"version": 4}))}&appid=wh5&clientVersion=9.1.0`, {
|
|
headers: {
|
|
"cookie": cookie,
|
|
"origin": "https://home.m.jd.com",
|
|
"referer": "https://home.m.jd.com/myJd/newhome.action",
|
|
"User-Agent": USER_AGENT,
|
|
"Content-Type": "application/x-www-form-urlencoded"
|
|
}
|
|
})
|
|
return data.farmUserPro?.shareCode ?? 'null'
|
|
}
|
|
|
|
async function health(cookie: string) {
|
|
let {data}: any = await axios.get(`https://api.m.jd.com/client.action/client.action?functionId=jdhealth_getTaskDetail&body=${encodeURIComponent(JSON.stringify({"buildingId": "", taskId: 6, "channelId": 1}))}&client=wh5&clientVersion=1.0.0`, {
|
|
headers: {
|
|
"Cookie": cookie,
|
|
"origin": "https://h5.m.jd.com",
|
|
"referer": "https://h5.m.jd.com/",
|
|
'Content-Type': 'application/x-www-form-urlencoded',
|
|
"User-Agent": USER_AGENT
|
|
}
|
|
})
|
|
return data.data?.result?.taskVos[0].assistTaskDetailVo.taskToken ?? 'null'
|
|
}
|
|
|
|
async function pet(cookie: string) {
|
|
let {data} = await axios.post('https://api.m.jd.com/client.action',
|
|
`functionId=initPetTown&body=${JSON.stringify({"version": 1})}&appid=wh5&client=apple&clientVersion=10.3.6&build=167963&rfs=0000`, {
|
|
headers: {
|
|
'Host': 'api.m.jd.com',
|
|
'Origin': 'https://h5.m.jd.com',
|
|
'User-Agent': USER_AGENT,
|
|
'Referer': 'https://h5.m.jd.com/',
|
|
'Content-Type': 'application/x-www-form-urlencoded',
|
|
'Cookie': cookie
|
|
}
|
|
})
|
|
return data.result?.shareCode ?? 'null'
|
|
}
|
|
|
|
async function factory(cookie: string) {
|
|
let {data}: any = await axios.post(`https://api.m.jd.com/client.action?functionId=jdfactory_getTaskDetail`,
|
|
`functionId=jdfactory_getTaskDetail&body=${encodeURIComponent(JSON.stringify({}))}&client=wh5&clientVersion=9.1.0`, {
|
|
headers: {
|
|
Cookie: cookie,
|
|
origin: "https://h5.m.jd.com",
|
|
referer: "https://h5.m.jd.com/",
|
|
"Content-Type": "application/x-www-form-urlencoded",
|
|
'User-Agent': USER_AGENT,
|
|
}
|
|
});
|
|
if (data.data.bizCode === 0) {
|
|
for (let t of data.data?.result?.taskVos) {
|
|
if (t.taskType === 14)
|
|
return t.assistTaskDetailVo.taskToken
|
|
}
|
|
}
|
|
return 'null'
|
|
}
|
|
|
|
async function sgmh(cookie: string) {
|
|
let {data}: any = await axios.post(`https://api.m.jd.com/client.action`,
|
|
`functionId=interact_template_getHomeData&body={"appId":"1EFRXxg","taskToken":""}&client=wh5&clientVersion=1.0.0`, {
|
|
headers: {
|
|
'Origin': `https://h5.m.jd.com`,
|
|
'Cookie': cookie,
|
|
'Accept': `application/json, text/plain, */*`,
|
|
'Referer': `https://h5.m.jd.com/babelDiy/Zeus/2WBcKYkn8viyxv7MoKKgfzmu7Dss/index.html`,
|
|
'Host': `api.m.jd.com`,
|
|
}
|
|
})
|
|
if (data.data.bizCode === 0) {
|
|
for (let t of data.data?.result?.taskVos) {
|
|
if (t.taskName === '邀请好友助力')
|
|
return t.assistTaskDetailVo.taskToken
|
|
}
|
|
}
|
|
return 'null'
|
|
}
|
|
|
|
async function jxfactory(cookie: string) {
|
|
await requestAlgo('c0ff1')
|
|
let url: string, timestamp = Date.now()
|
|
let stk = `_time,bizCode,showAreaTaskFlag,source`, params = {showAreaTaskFlag: '1', bizCode: 'dream_factory'}
|
|
let t: { key: string, value: string } [] = [
|
|
{key: '_time', value: timestamp.toString()},
|
|
{key: '_ts', value: timestamp.toString()},
|
|
{key: 'bizCode', value: 'dream_factory'},
|
|
{key: 'source', value: 'dreamfactory'},
|
|
]
|
|
url = `https://m.jingxi.com/newtasksys/newtasksys_front/GetUserTaskStatusList?source=dreamfactory&_time=${timestamp}&_ts=${timestamp}&_stk=${encodeURIComponent(stk)}&_=${timestamp + 3}&sceneval=2&g_login_type=1&callback=jsonpCBK${randomWord()}&g_ty=ls`
|
|
|
|
for (let [key, value] of Object.entries(params)) {
|
|
t.push({key, value})
|
|
url += `&${key}=${value}`
|
|
}
|
|
let h5st = geth5st(t, 'c0ff1')
|
|
url += `&h5st=${encodeURIComponent(h5st)}`
|
|
let {data}: any = await axios.get(url, {
|
|
headers: {
|
|
'Referer': 'https://actst.jingxi.com/pingou/dream_factory/index.html',
|
|
'User-Agent': USER_AGENT,
|
|
'Host': 'm.jingxi.com',
|
|
'Cookie': cookie
|
|
}
|
|
})
|
|
return JSON.parse(data.match(/try{jsonpCBK.?\((.*)/)![1]).data?.encryptPin || 'null'
|
|
}
|
|
|
|
export {
|
|
bean,
|
|
farm,
|
|
health,
|
|
pet,
|
|
factory,
|
|
sgmh,
|
|
jxfactory
|
|
} |