yydspure/utils/shareCodesTool.ts

137 lines
5.0 KiB
TypeScript
Raw Normal View History

2022-07-28 21:53:26 +08:00
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
}