修改打印

master
刘东琪 10 months ago
parent 0e07937fe2
commit 98c6962ec7
  1. 9
      routes/Fp.js
  2. 103
      routes/service/FpService.js
  3. 175
      routes/service/static/fp/fp-crypt.js

@ -14,7 +14,7 @@ router.post('/getLos', async (req, res) => {
let html = req.body.html
let loginCookieStr = req.body.loginCookie
let publicKey = req.body.publicKey;
console.log(`${uuid};接收到 ${param} 请求:${url} loginCookieStr: ${loginCookieStr} publicKey: `, JSON.stringify(publicKey));
console.log(`${uuid};接收到 ${param} 请求:${url} loginCookieStr: ${loginCookieStr} publicKey: ${JSON.stringify(publicKey)}`);
if (url == null || url === "") {
return res.status(500).send("url为空")
}
@ -25,8 +25,11 @@ router.post('/getLos', async (req, res) => {
try {
// 执行
let los = await fpService.get_los(url, param, html, loginCookieStr, publicKey);
console.log(los)
res.status(200).send(los);
if (!los || los['hd'] === '') {
console.error(`${uuid}; 生成错误!请检查 html 或 cookie, los:${JSON.stringify(los)}`)
return res.status(500).send('生成错误!请检查 html 或 cookie')
}
return res.status(200).send(los);
} catch (e) {
console.error(e.stack)
return res.status(500).send(e.message)

@ -18,18 +18,12 @@ class FpService {
* @param publicKey
* @returns {Promise<*>}
*/
async get_los(url, param, html, loginCookieStr,publicKey) {
async get_los(url, param, html, loginCookieStr, publicKey) {
let baseUrl = new URL(url).origin;
let urlPath = url.replace(baseUrl, "");
let headers = {};
// if (param != null || param !== "") {
// let fpCrypt = new FpCrypt(loginCookieStr);
// let $e = fpCrypt.$e(param, urlPath);
// param = JSON.stringify({'jmbw': $e["enVal"]});
// headers['security-mes-key'] = $e["enMesKey"]
// }
console.time('js执行时长')
console.time('los生成时长')
const [jsDom, cookieJar] = jsdomFromText({
url: `${baseUrl}/invoice-query/invoice-query`,
referrer: baseUrl,
@ -57,103 +51,30 @@ class FpService {
window.$dunm.$byno();
}
let fpCrypt = new FpCrypt(loginCookieStr,publicKey);
let fpCrypt = new FpCrypt(loginCookieStr, publicKey);
// 处理 Param
let handleParam = fpCrypt.handleParam(param, urlPath);
var enParam = ""
if (handleParam["enVal"]){
if (handleParam["enVal"]) {
enParam = JSON.stringify({'Jmbw': handleParam["enVal"]});
headers['security-mes-key'] = handleParam["enMesKey"]
}
// headers['security-mes-key'] = $e["enMesKey"]
// 处理 xhr 后缀
let handleSuffix = fpCrypt.handleSuffix(urlPath);
let los = window[window["_d_ts"]](handleSuffix, enParam);
console.log(urlPath)
let cookies = cookieJar.getCookieStringSync(baseUrl);
los["cookies"] = cookies
headers['lzkqow23819'] = los.hd
los["headers"] = headers['security-mes-key']
los["cookies"] = cookieJar.getCookieStringSync(baseUrl);
console.log('js执行完成,返回结果 ', los)
// 关闭
dom.window.close()
console.timeEnd('js执行时长')
console.timeEnd('los生成时长')
return los
}
// random_32(enParam) {
// var n, i, e,
// a = "0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz".split(""), c = [];
// if (e = a["length"], 32) {
// for (n = 0; n < 32; n++) {
// c[n] = a[0 | Math.random() * e];
// }
// } else {
// for (c[8] = c[13] = c[18] = c[23] = "-", c[14] = "4", n = 0; (n < 36); n++) {
// c[n] || (i = 0 | 16 * Math.random(), c[n] = a[19 === n ? 8 | (3 & i) : i]);
// }
// }
// console.log(`生成随机 ${e} 位字符串`, c["join"](""))
// return c["join"]("")
// }
//
// get_cookie(key, loginCookieStr) {
// var key_list = loginCookieStr.split("; ")
// for (var k = 0; key_list["length"] > k; k++) {
// if (key_list[k].includes(key)) {
// return key_list[k].split("=")[1]
// }
// }
// }
//
// reverse_str(t, loginCookieStr) {
// var i = this.get_cookie("dzfp-ssotoken", loginCookieStr), r = this.qe(i),
// c = t.split('').reverse().join("") + i.split('').reverse().join(""),
// u = "";
// for (var s = 0; s < c["length"]; s += r) {
// var l = c["substring"](s, s + r);
// u += l.split('').reverse().join("")
// }
// var res = u["substring"](0, 20);
// console.log('倒叙处理字符返回20位', res)
// return res;
// }
//
// qe(n) {
// null === n && (n = "");
// var o = n["match"]("[0-9]+");
// if ((null === o)) o = 3; else {
// var a = o["index"];
// o = parseInt(n["substring"](a, (a + 1)), 10) + 3
// }
// return o
// }
//
// get_url(url) {
// return url + "?"
// }
//
// hex_md5(reverse_str, url) {
// var strlist = reverse_str + "+" + this.get_url(url)
// var res = CryptoJS.MD5(strlist).toString()
// console.log('md5:', res)
// return res
// }
//
// aes_encrypt(value, key) {
// const srcs = CryptoJS.enc.Utf8.parse(value);
// const key1 = CryptoJS.enc.Utf8.parse(key);
// const cipherTxt = CryptoJS.AES.encrypt(srcs, key1, {
// mode: CryptoJS.mode.ECB, //ECB模式
// padding: CryptoJS.pad.Pkcs7 //padding处理
// }).toString();
// console.log('aes:', cipherTxt)
// return cipherTxt
// }
}
//fp = new FpService()
//fp.random_32()
//fp.get_cookie("dzfp-ssotoken","tpass_p3d8j63p8b6p4bbab8dca4832a7fj9cc=eyJhbGciOiJIUzUxMiJ9.eyJsb2dpbl91c2VyX2tleSI6ImJjNzUxNmI4NWI0NjRiZjlhMDJlNzg2NWIxZmViMGE3In0.xMmdn82GoF9NH8ldYx5mCrHFZhP13041_34uZ51kF9INM7MB33rARWCqhCZiqNZUKwB1WkTH5jDIZLwh_bRYyw; sensorsdata2015jssdkcross=%7B%22distinct_id%22%3A%221920330690e83a-0f487f8b21c83b8-26001151-3153384-1920330690f1823%22%2C%22first_id%22%3A%22%22%2C%22props%22%3A%7B%22%24latest_traffic_source_type%22%3A%22%E7%9B%B4%E6%8E%A5%E6%B5%81%E9%87%8F%22%2C%22%24latest_search_keyword%22%3A%22%E6%9C%AA%E5%8F%96%E5%88%B0%E5%80%BC_%E7%9B%B4%E6%8E%A5%E6%89%93%E5%BC%80%22%2C%22%24latest_referrer%22%3A%22%22%7D%2C%22identities%22%3A%22eyIkaWRlbnRpdHlfY29va2llX2lkIjoiMTkyMDMzMDY5MGU4M2EtMGY0ODdmOGIyMWM4M2I4LTI2MDAxMTUxLTMxNTMzODQtMTkyMDMzMDY5MGYxODIzIn0%3D%22%2C%22history_login_id%22%3A%7B%22name%22%3A%22%22%2C%22value%22%3A%22%22%7D%2C%22%24device_id%22%3A%221920330690e83a-0f487f8b21c83b8-26001151-3153384-1920330690f1823%22%7D; tpass_mcsc7e2ssscb4sfmbsmas35sass2753b=eyJhbGciOiJIUzUxMiJ9.eyJsb2dpbl91c2VyX2tleSI6Ijk3ZjQ1NjU5MzA4ODRhNmFiOWIxMjNhZDY5MDdkYTU5In0.NABIuYcca0UKpWOwvjiut7f3yn-tIIGZyBBni7S1jFAoaRR_kaH8CTZLxSxfc6-Q6n5hcG1l94prwDFGgzZWYw; tpass_k238ck9eedkb48a9a5d7k5c2c5kkka58=eyJhbGciOiJIUzUxMiJ9.eyJsb2dpbl91c2VyX2tleSI6ImZkZTE4NTFkZGJhNDQ0MWE5ZWJlMWFjODU5NTNiNjM0In0.qHK5SMznOicFnrhi-1MnF16y2QypCSNLtbi3KE2pD1kyz4yRpLE8Fm4aHQMJ5hMa5aO1ibB-iQ-npD7QkoP3qA; tpass_te95ftefe59243cbafta4fb82bbtfcte=eyJhbGciOiJIUzUxMiJ9.eyJsb2dpbl91c2VyX2tleSI6ImViYTMzNDVhYTU0NjQ0NWZhOTdlYmViY2Q3MWNiNWQ4In0.Rk1-kzwo4fneL4FapgQzhzxC-vBVu2zpLHQVfnylQ88x6Ik5QNt3PuyfmqLdoenoR7y69BgAOM3GvLi_KFcsoA; tpass_q4q6b8aa469v4369ae7483c4vb45cvca=eyJhbGciOiJIUzUxMiJ9.eyJsb2dpbl91c2VyX2tleSI6Ijg3MWNhNzIyMmRmZjQ1YzQ4YmFjYzViMDExYTY1MjU2In0.rUzqjvnFTAwRxRa49yeiPWqHWNF8WRmsKPayVfGRLuMja5huBOmlpHc-kEXBiGh43ei3t-ZbT7EcvGRga0aZkQ; tpass_mb29dc78543X4X769Hd7d8a35Hdd5236=eyJhbGciOiJIUzUxMiJ9.eyJsb2dpbl91c2VyX2tleSI6IjgxYTYwZjIxZmMwZTRlMDY5NTFkNDI1YWUwOWM3MjFjIn0.V1-LfcMe6VM9W4q_F15gqOxNbA2jRLRVpCml0WFvKTYAGdFqsi3JEgGBvMCL0SEkAOSVhGIn1A9ILjCAuiJ_hg; tpass_c5djdncfa7nj4n2cajna2j68cndbj2fc=eyJhbGciOiJIUzUxMiJ9.eyJsb2dpbl91c2VyX2tleSI6ImI1NzM2MjUwMDE5MDQyMTNiYzViNmQ0NGI1MGRlMTZlIn0.Es7Q_0jUPcvGddK90anCqeEIBjtl52YZ3669quo27iVjnObAt580ZEHJPjCSLw9vu3HAtPY2SkjYuquc0tItqA; tpass_ue7c9954acea492784ac6g78939gc2e9=eyJhbGciOiJIUzUxMiJ9.eyJsb2dpbl91c2VyX2tleSI6ImM4Y2Y1ZGZkYjJkMTQ0NGJiYjM0NGM1ZGJjZDlhY2UwIn0.dfWdZX2tAHcB5Xgb36Y5WQJabicYJYoURhAhWzKu4cSklCYc1lK6-fjbTbiRUNmW3hAQ0lUDUkH3DHVVTuvOjA; tpass_x774e745d5k24ex5a7kkk375x933f654=eyJhbGciOiJIUzUxMiJ9.eyJsb2dpbl91c2VyX2tleSI6IjM0NjljNWY5MThkZTQ4M2JiY2QwNDcyMjgwMzgwZWFkIn0.NKypnkLFaewOcawUAg_fZQdbFAbgFU1Nqj3ibv3FumIKIW6AZXiD7c0ASR16aTa4B4XUBjrysQiXrHksxRX-OQ; oauth2_referer=etax.hubei.chinatax.gov.cn; tpass_tct8zta97w6c46zdt9zc2648227df5z2=eyJhbGciOiJIUzUxMiJ9.eyJsb2dpbl91c2VyX2tleSI6IjVkNTg4ZjBmN2QxNjQ0NDdhZTczYjBlMzM2ZWIzMGYzIn0.Lmt8PQ7SLdivPrcoa6hxEIW2osZBMFc34ate7WKZ31AtSaOYDDMy1lzVmlBmqaIRNIJUhS18N_jJulWz4XAcJA; tpass_sa67ddd29sc94cga9f96s7da2772s6d7=eyJhbGciOiJIUzUxMiJ9.eyJsb2dpbl91c2VyX2tleSI6IjVlZjcyMTNmYWYwZTRkYmRiNDMyODU5MmY2NDBjM2EyIn0.jSXIt0ul0pp0Qnb7s7VSdJxVmyfY7fPqzQQg4s2ATS1dluuM49H9Q93oveAxy7URB0s4nMTtWwyTq3mqB_5mpA; tpass_b6edq5qqc5cb4c3288q6aq6fab5qc3b4=eyJhbGciOiJIUzUxMiJ9.eyJsb2dpbl91c2VyX2tleSI6IjFlYzI1Zjc4ZGQyMDRmNTQ5MTAxZGEyNDM2MjFmOGU1In0.0VH-6AoQlwsdXMCV6u9nAWCDBWw_sknQQbZy_IzhlrxXkanffsVByh63GYra3awUBma2w-c6WfCwQBdcJGukMg; znhd-ssotoken=a8a7bf26beac4fd4929980b20971b228; ZNHD_SECURITY_CHECK_TOKEN=e4dd8ea2c69440169aede2fdce9a3180; lzkqow39189=2bb488d931034436b6248e9f304424ec; DTSwUOYx7MiWN=ab2bb065ae0ed58c8a84593bb5a3028cb6197c4c212230fce7fbf44bb130b09; dzfp-ssotoken=684d411b247b45c3bcc27ab2e6f8fe68; SSO_SECURITY_CHECK_TOKEN=1100ce6e65af4dd7bb5cf78f795e16a5; lzkqow38189=1727141642601; c_time=12; MKls83gqduGS=0fce79cac178fb6e9a66ca06fa3610191e8668277ba8c269ff723d98e73fd12d893bf51bac776eed80b13155ab4b96ea")
//fp.reverse_str("","tpass_p3d8j63p8b6p4bbab8dca4832a7fj9cc=eyJhbGciOiJIUzUxMiJ9.eyJsb2dpbl91c2VyX2tleSI6ImJjNzUxNmI4NWI0NjRiZjlhMDJlNzg2NWIxZmViMGE3In0.xMmdn82GoF9NH8ldYx5mCrHFZhP13041_34uZ51kF9INM7MB33rARWCqhCZiqNZUKwB1WkTH5jDIZLwh_bRYyw; sensorsdata2015jssdkcross=%7B%22distinct_id%22%3A%221920330690e83a-0f487f8b21c83b8-26001151-3153384-1920330690f1823%22%2C%22first_id%22%3A%22%22%2C%22props%22%3A%7B%22%24latest_traffic_source_type%22%3A%22%E7%9B%B4%E6%8E%A5%E6%B5%81%E9%87%8F%22%2C%22%24latest_search_keyword%22%3A%22%E6%9C%AA%E5%8F%96%E5%88%B0%E5%80%BC_%E7%9B%B4%E6%8E%A5%E6%89%93%E5%BC%80%22%2C%22%24latest_referrer%22%3A%22%22%7D%2C%22identities%22%3A%22eyIkaWRlbnRpdHlfY29va2llX2lkIjoiMTkyMDMzMDY5MGU4M2EtMGY0ODdmOGIyMWM4M2I4LTI2MDAxMTUxLTMxNTMzODQtMTkyMDMzMDY5MGYxODIzIn0%3D%22%2C%22history_login_id%22%3A%7B%22name%22%3A%22%22%2C%22value%22%3A%22%22%7D%2C%22%24device_id%22%3A%221920330690e83a-0f487f8b21c83b8-26001151-3153384-1920330690f1823%22%7D; tpass_mcsc7e2ssscb4sfmbsmas35sass2753b=eyJhbGciOiJIUzUxMiJ9.eyJsb2dpbl91c2VyX2tleSI6Ijk3ZjQ1NjU5MzA4ODRhNmFiOWIxMjNhZDY5MDdkYTU5In0.NABIuYcca0UKpWOwvjiut7f3yn-tIIGZyBBni7S1jFAoaRR_kaH8CTZLxSxfc6-Q6n5hcG1l94prwDFGgzZWYw; tpass_k238ck9eedkb48a9a5d7k5c2c5kkka58=eyJhbGciOiJIUzUxMiJ9.eyJsb2dpbl91c2VyX2tleSI6ImZkZTE4NTFkZGJhNDQ0MWE5ZWJlMWFjODU5NTNiNjM0In0.qHK5SMznOicFnrhi-1MnF16y2QypCSNLtbi3KE2pD1kyz4yRpLE8Fm4aHQMJ5hMa5aO1ibB-iQ-npD7QkoP3qA; tpass_te95ftefe59243cbafta4fb82bbtfcte=eyJhbGciOiJIUzUxMiJ9.eyJsb2dpbl91c2VyX2tleSI6ImViYTMzNDVhYTU0NjQ0NWZhOTdlYmViY2Q3MWNiNWQ4In0.Rk1-kzwo4fneL4FapgQzhzxC-vBVu2zpLHQVfnylQ88x6Ik5QNt3PuyfmqLdoenoR7y69BgAOM3GvLi_KFcsoA; tpass_q4q6b8aa469v4369ae7483c4vb45cvca=eyJhbGciOiJIUzUxMiJ9.eyJsb2dpbl91c2VyX2tleSI6Ijg3MWNhNzIyMmRmZjQ1YzQ4YmFjYzViMDExYTY1MjU2In0.rUzqjvnFTAwRxRa49yeiPWqHWNF8WRmsKPayVfGRLuMja5huBOmlpHc-kEXBiGh43ei3t-ZbT7EcvGRga0aZkQ; tpass_mb29dc78543X4X769Hd7d8a35Hdd5236=eyJhbGciOiJIUzUxMiJ9.eyJsb2dpbl91c2VyX2tleSI6IjgxYTYwZjIxZmMwZTRlMDY5NTFkNDI1YWUwOWM3MjFjIn0.V1-LfcMe6VM9W4q_F15gqOxNbA2jRLRVpCml0WFvKTYAGdFqsi3JEgGBvMCL0SEkAOSVhGIn1A9ILjCAuiJ_hg; tpass_c5djdncfa7nj4n2cajna2j68cndbj2fc=eyJhbGciOiJIUzUxMiJ9.eyJsb2dpbl91c2VyX2tleSI6ImI1NzM2MjUwMDE5MDQyMTNiYzViNmQ0NGI1MGRlMTZlIn0.Es7Q_0jUPcvGddK90anCqeEIBjtl52YZ3669quo27iVjnObAt580ZEHJPjCSLw9vu3HAtPY2SkjYuquc0tItqA; tpass_ue7c9954acea492784ac6g78939gc2e9=eyJhbGciOiJIUzUxMiJ9.eyJsb2dpbl91c2VyX2tleSI6ImM4Y2Y1ZGZkYjJkMTQ0NGJiYjM0NGM1ZGJjZDlhY2UwIn0.dfWdZX2tAHcB5Xgb36Y5WQJabicYJYoURhAhWzKu4cSklCYc1lK6-fjbTbiRUNmW3hAQ0lUDUkH3DHVVTuvOjA; tpass_x774e745d5k24ex5a7kkk375x933f654=eyJhbGciOiJIUzUxMiJ9.eyJsb2dpbl91c2VyX2tleSI6IjM0NjljNWY5MThkZTQ4M2JiY2QwNDcyMjgwMzgwZWFkIn0.NKypnkLFaewOcawUAg_fZQdbFAbgFU1Nqj3ibv3FumIKIW6AZXiD7c0ASR16aTa4B4XUBjrysQiXrHksxRX-OQ; oauth2_referer=etax.hubei.chinatax.gov.cn; tpass_tct8zta97w6c46zdt9zc2648227df5z2=eyJhbGciOiJIUzUxMiJ9.eyJsb2dpbl91c2VyX2tleSI6IjVkNTg4ZjBmN2QxNjQ0NDdhZTczYjBlMzM2ZWIzMGYzIn0.Lmt8PQ7SLdivPrcoa6hxEIW2osZBMFc34ate7WKZ31AtSaOYDDMy1lzVmlBmqaIRNIJUhS18N_jJulWz4XAcJA; tpass_sa67ddd29sc94cga9f96s7da2772s6d7=eyJhbGciOiJIUzUxMiJ9.eyJsb2dpbl91c2VyX2tleSI6IjVlZjcyMTNmYWYwZTRkYmRiNDMyODU5MmY2NDBjM2EyIn0.jSXIt0ul0pp0Qnb7s7VSdJxVmyfY7fPqzQQg4s2ATS1dluuM49H9Q93oveAxy7URB0s4nMTtWwyTq3mqB_5mpA; tpass_b6edq5qqc5cb4c3288q6aq6fab5qc3b4=eyJhbGciOiJIUzUxMiJ9.eyJsb2dpbl91c2VyX2tleSI6IjFlYzI1Zjc4ZGQyMDRmNTQ5MTAxZGEyNDM2MjFmOGU1In0.0VH-6AoQlwsdXMCV6u9nAWCDBWw_sknQQbZy_IzhlrxXkanffsVByh63GYra3awUBma2w-c6WfCwQBdcJGukMg; znhd-ssotoken=a8a7bf26beac4fd4929980b20971b228; ZNHD_SECURITY_CHECK_TOKEN=e4dd8ea2c69440169aede2fdce9a3180; lzkqow39189=2bb488d931034436b6248e9f304424ec; DTSwUOYx7MiWN=ab2bb065ae0ed58c8a84593bb5a3028cb6197c4c212230fce7fbf44bb130b09; dzfp-ssotoken=684d411b247b45c3bcc27ab2e6f8fe68; SSO_SECURITY_CHECK_TOKEN=1100ce6e65af4dd7bb5cf78f795e16a5; lzkqow38189=1727141642601; c_time=12; MKls83gqduGS=0fce79cac178fb6e9a66ca06fa3610191e8668277ba8c269ff723d98e73fd12d893bf51bac776eed80b13155ab4b96ea")
//fp.get_url("/szzhzz/qlfpcx/v1/queryFpjcxx")
//fp.hex_md5("2e6f8fe68c3bcc27ab11","/szzhzz/qlfpcx/v1/queryFpjcxx")
//fp.aes_encrypt('aebb350059d1768250bc36a5320d180e{"gjbq":"1","fpztDm":["01","02","03","04"],"fplyDm":"0","fplxDm":[],"kprqq":"2024-09-08","kprqz":"2024-09-24","tfrqq":"2024-09-08","tfrqz":"2024-09-24","sflzfp":"","dtBz":"N","pageNumber":1,"pageSize":20}',"714acfe38a3df9da5651d01fd223d74d")
module.exports = FpService

@ -18,7 +18,7 @@ class FpCrypt {
/**
* 处理 url 后缀
* @param t url
* @param e
* @param e xhr
* @returns {*}
*/
handleSuffix(t, e) {
@ -65,16 +65,17 @@ class FpCrypt {
s = this.Ke(s);
var l, f = (new Date)['valueOf'](),
d = (this.qe()["num"] % 2) === 0 ? (50 * Math['random'](1)) : (49 * Math['random']()) + 51;
logger("tokenKey 加密方法选择", d, e)
// d = ((this.qe()['num'] % 2) === 0) ? (50 * Math['random'](1)) : (49 * Math['random']()) + 51;
if ((d >= 0) && (d <= 50)) {
logger('对dzfp-ssotoken进行加密')
l = this.Qs(f)
} else if ((d >= 51) && d <= 100) {
logger('对tokenKey进行加密')
l = this.Qt(f, e)
}
var h = s['indexOf']("?") === (s["length"] - 1) ? "" : s['indexOf']("?") > -1 ? "&" : "?",
p = s += ""['concat'](h, "ruuid=")['concat'](f);
if (o) {
logger(`${o} 进行加密`)
var v = p['split']("?")['splice'](1);
for (var b in v['map'](function (t) {
return t["split"]("=")[0]
@ -180,44 +181,64 @@ class FpCrypt {
}
Ke(t) {
var n = "6|5|4|3|0|1|2"["split"]("|"), o = 0;
while (1) {
switch (n[o++]) {
case "0":
(s["length"] > 1) && (f = s[0], l = s[1]["split"]("&"));
continue;
case "1":
for (var a = 0; a < l["length"]; a++) {
var c = l[a], u = c.split("=");
("t" !== u[0]) && "urlyzm" !== u[0] && "ruuid" !== u[0] && (f += "".concat(f.includes("?") ? "&" : "?").concat(c))
}
continue;
case "2":
(-1 === f.indexOf("?")) && (f += "?");
logger(`处理url后缀${t}完成返回${f}`)
return f;
case "3":
var s = t["split"]("?"), l = [];
continue;
case "4":
(0 !== f["indexOf"]("/")) && (f += "/");
continue;
case "5":
var f = t;
continue;
case "6":
if ("" === t || null == t) {
return t;
}
continue
}
break
var s, l, f;
if ("" === t || null == t) {
return t;
}
f = t;
(0 !== f["indexOf"]("/")) && (f += "/");
s = t["split"]("?");
l = [];
(s["length"] > 1) && (f = s[0], l = s[1]["split"]("&"));
for (var a = 0; a < l["length"]; a++) {
var c = l[a], u = c.split("=");
("t" !== u[0]) && "urlyzm" !== u[0] && "ruuid" !== u[0] && (f += "".concat(f.includes("?") ? "&" : "?").concat(c))
}
(-1 === f.indexOf("?")) && (f += "?");
logger(`处理url后缀${t}完成返回${f}`)
return f;
}
// Ke(t) {
// var n = "6|5|4|3|0|1|2"["split"]("|"), o = 0;
// while (1) {
// switch (n[o++]) {
// case "0":
// (s["length"] > 1) && (f = s[0], l = s[1]["split"]("&"));
// continue;
// case "1":
// for (var a = 0; a < l["length"]; a++) {
// var c = l[a], u = c.split("=");
// ("t" !== u[0]) && "urlyzm" !== u[0] && "ruuid" !== u[0] && (f += "".concat(f.includes("?") ? "&" : "?").concat(c))
// }
// continue;
// case "2":
// (-1 === f.indexOf("?")) && (f += "?");
// logger(`处理url后缀${t}完成返回${f}`)
// return f;
// case "3":
// var s = t["split"]("?"), l = [];
// continue;
// case "4":
// (0 !== f["indexOf"]("/")) && (f += "/");
// continue;
// case "5":
// var f = t;
// continue;
// case "6":
// if ("" === t || null == t) {
// return t;
// }
// continue
// }
// break
// }
// }
he(t) {
let res = CryptoJS.MD5(t).toString();
logger('生成32位小写md5', t, res)
logger(t, '生成32位小写md5 --->', res)
return res
}
@ -246,50 +267,58 @@ class FpCrypt {
};
Ae(t) {
var n = "4|2|1|3|0"["split"]("|"), i = 0, o, l, s;
while (1) {
switch (n[i++]) {
case "0":
return null;
case "1":
o = s["indexOf"](l);
continue;
case "2":
l += "=";
continue;
case "3":
if ((-1 !== o)) {
var a = (o + l["length"]), c = s.indexOf(";", a);
(-1 === c) && (c = s.length);
var u = s.substring(a, c);
var res = unescape(u);
logger('获取token', t, '16进制解码', res)
return res;
}
continue;
case "4":
// todo: 这里获取 cookie
s = this.cookie;
l = JSON["parse"](JSON["stringify"](t));
continue
}
break
var o, l, s;
s = this.cookie;
l = JSON["parse"](JSON["stringify"](t));
l += "=";
o = s["indexOf"](l);
if ((-1 !== o)) {
var a = (o + l["length"]), c = s.indexOf(";", a);
(-1 === c) && (c = s.length);
var u = s.substring(a, c);
var res = unescape(u);
logger('获取token', t, '16进制解码', res)
return res;
}
return null;
};
// Ae(t) {
// var n = "4|2|1|3|0"["split"]("|"), i = 0, o, l, s;
// while (1) {
// switch (n[i++]) {
// case "0":
// return null;
// case "1":
// o = s["indexOf"](l);
// continue;
// case "2":
// l += "=";
// continue;
// case "3":
// if ((-1 !== o)) {
// var a = (o + l["length"]), c = s.indexOf(";", a);
// (-1 === c) && (c = s.length);
// var u = s.substring(a, c);
// var res = unescape(u);
// logger('获取token', t, '16进制解码', res)
// return res;
// }
// continue;
// case "4":
// // todo: 这里获取 cookie
// s = this.cookie;
// l = JSON["parse"](JSON["stringify"](t));
// continue
// }
// break
// }
// };
a(t) {
return t.reverse()
};
}
// let fpCrypt = new FpCrypt("oauth2_referer=dppt.hubei.chinatax.gov.cn; dzfp-ssotoken=37c347d5ab014bacb418d7756b9e7ee1; SSO_SECURITY_CHECK_TOKEN=91081171bc604d16910500c4982e74ea; c_time=12; lzkqow39189=c6edeb37685b423c8298eaa8e1b41097; DTSwUOYx7MiWN=5c199c6d5d4fda3505876d98a7e173007f4ab2ae661119adf9143257d71d06e5; lzkqow38189=1727098216617; MKls83gqduGS=e4ec10654056af2f2641b3ce60f124ee7cc607e9ac44bb8b86b9e6d5879ce1c3c7b827862a2ff46be48061c039dccddf");
// fpCrypt.handleParam('{"gjbq": "1","fpztDm": ["01","02","03","04"],"fplyDm": "0","fplxDm": [],"kprqq": "2024-09-08","kprqz": "2024-09-24","tfrqq": "2024-09-08","tfrqz": "2024-09-24","sflzfp": "","dtBz": "N","pageNumber": 1,"pageSize": 20}',
// "/szzhzz/qlfpcx/v1/queryFpjcxx?t=1727101152631")
// let handleSuffix = fpCrypt.handleSuffix("/szzhzz/qlfpcx/v1/queryFpjcxx?t=1727115438241");
// console.log(handleSuffix)
module.exports = FpCrypt
Loading…
Cancel
Save