修复韩剧TV S5 搜索请求 (#238)
变更内容: - 更新韩剧TV S5搜索请求画像与版本头配置 - 统一韩剧TV应用请求头中的User-Agent与版本号 - 去除无效登录头并保持公开仓库可提交的通用设备画像
This commit is contained in:
1 parent
410ff59d61
commit
cdbea1b77d
2 files changed
+15
-45
No files matched your search
@@ -24,7 +24,7 @@ export default class HanjutvSource extends BaseSource {
|
||||
this.oldDanmuHost = "https://hxqapi.zmdcq.com";
|
||||
this.defaultRefer = "2JGztvGjRVpkxcr0T4ZWG2k+tOlnHmDGUNMwAGSeq548YV2FMbs0h0bXNi6DJ00L";
|
||||
this.webUserAgent = "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36";
|
||||
this.appUserAgent = "HanjuTV/6.8 (23127PN0CC; Android 16; Scale/2.00)";
|
||||
this.appUserAgent = "HanjuTV/6.8.2 (Redmi Note 12; Android 14; Scale/2.00)";
|
||||
}
|
||||
|
||||
getWebHeaders() {
|
||||
@@ -36,8 +36,8 @@ export default class HanjutvSource extends BaseSource {
|
||||
|
||||
getAppHeaders() {
|
||||
return {
|
||||
vc: "a_8260",
|
||||
vn: "6.8",
|
||||
vc: "a_8280",
|
||||
vn: "6.8.2",
|
||||
ch: "xiaomi",
|
||||
app: "hj",
|
||||
"User-Agent": this.appUserAgent,
|
||||
|
||||
@@ -1,13 +1,14 @@
|
||||
import { md5, stringToUtf8Bytes, utf8BytesToString, bytesToBase64, base64ToBytes, invSubBytes, subWord, keyExpansion, invShiftRows } from "./codec-util.js";
|
||||
|
||||
// =====================
|
||||
// 韩剧tv工具
|
||||
// =====================
|
||||
|
||||
// 移动端参数
|
||||
const HANJUTV_VERSION = "6.5.3";
|
||||
const HANJUTV_VC = "a_7980";
|
||||
const HANJUTV_UA = "HanjuTV/6.5.3 (Pixel 2 XL; Android 11; Scale/2.00)";
|
||||
const HANJUTV_VERSION = "6.8.2";
|
||||
const HANJUTV_VC = "a_8280";
|
||||
const HANJUTV_CH = "xiaomi";
|
||||
const HANJUTV_MODEL = "Redmi Note 12";
|
||||
const HANJUTV_MAKER = "Xiaomi";
|
||||
const HANJUTV_OSV = "14";
|
||||
const HANJUTV_UA = `HanjuTV/${HANJUTV_VERSION} (${HANJUTV_MODEL}; Android ${HANJUTV_OSV}; Scale/2.00)`;
|
||||
const HANJUTV_INSTALL_AGE_MS = 14 * 24 * 60 * 60 * 1000;
|
||||
const HANJUTV_UK_KEY = "f349wghhe784tqwh";
|
||||
const HANJUTV_UK_IV = "d3w8hf94fidk38lk";
|
||||
const HANJUTV_RESPONSE_SECRET = "34F9Q53w/HJW8E6Q";
|
||||
@@ -202,38 +203,9 @@ function randomInt(max) {
|
||||
}
|
||||
|
||||
function buildSearchSignPayload(uid, timestamp) {
|
||||
return JSON.stringify({
|
||||
emu: 0,
|
||||
ou: 0,
|
||||
it: timestamp,
|
||||
iit: timestamp,
|
||||
bs: 0,
|
||||
uid,
|
||||
pc: 0,
|
||||
tm: 0,
|
||||
d8m: "0,0,0,0,0,0,0,0",
|
||||
md: "Pixel 2 XL",
|
||||
maker: "Google",
|
||||
osv: "11",
|
||||
br: 100,
|
||||
rpc: 0,
|
||||
scc: 0,
|
||||
plc: 0,
|
||||
toc: 1,
|
||||
tsc: 0,
|
||||
ts: timestamp,
|
||||
pa: 1,
|
||||
nw: 2,
|
||||
px: "0",
|
||||
isp: "",
|
||||
ai: "ccffc2520864efdb",
|
||||
oa: "",
|
||||
dpc: 0,
|
||||
dsc: 0,
|
||||
qpc: 0,
|
||||
apad: 0,
|
||||
pk: "com.babycloud.hanju",
|
||||
});
|
||||
const ts = Number(timestamp);
|
||||
const installTs = Math.max(0, ts - HANJUTV_INSTALL_AGE_MS);
|
||||
return JSON.stringify({ emu: 0, ou: 0, it: installTs, iit: installTs, bs: 0, uid, pc: 0, tm: 81, d8m: "0,0,0,0,0,0,0,4", md: HANJUTV_MODEL, maker: HANJUTV_MAKER, osv: HANJUTV_OSV, br: 95, rpc: 0, scc: 2, plc: 6, toc: 19, tsc: 10, ts, pa: 1, crec: 0, nw: 2, px: "0", isp: "", ai: "", oa: "", dpc: 0, dsc: 0, qpc: 0, apad: 0, pk: "com.babycloud.hanju" });
|
||||
}
|
||||
|
||||
export function createHanjutvUid(length = 20) {
|
||||
@@ -258,14 +230,12 @@ export async function createHanjutvSearchHeaders(uid, timestamp = Date.now()) {
|
||||
|
||||
return {
|
||||
app: "hj",
|
||||
ch: "qq",
|
||||
ch: HANJUTV_CH,
|
||||
uk,
|
||||
"auth-uid": "",
|
||||
vn: HANJUTV_VERSION,
|
||||
sign,
|
||||
"User-Agent": HANJUTV_UA,
|
||||
vc: HANJUTV_VC,
|
||||
"auth-token": "",
|
||||
"Accept-Encoding": "gzip",
|
||||
Connection: "Keep-Alive",
|
||||
};
|
||||
|
||||
Reference in new issue
Block a user