爬虫 某物流

news/2024/7/19 10:28:51 标签: javascript, 前端, 开发语言, 爬虫

目标地址

url = "https://api.jdl.com/aging/feeInquiryNewByJDL"

加密参数 ciphertext和data

搜关键字ciphertext跟着栈走

很明显的DES加密

window = global

const e = require('jsencrypt');
// const e = require('JSEncrypt')
// e = r(775).JSEncrypt
// const t = require('crypto-js')

var n = "0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ";
   function o() {
            for (var e = "", i = 16; i > 0; --i)
                e += n[Math.floor(62 * Math.random())];
            return e
        }
s = {
    "requestData": [
        {
            "queryType": 1,
            "volume": "1",
            "weight": 1,
            "sendTime": 1702283304071,
            "sendDetailAddress": "111",
            "receiveDetailAddress": "科学园南里西街与南沙滩东路交叉口西120米",
            "sendProvinceId": 1,
            "sendCityId": 72,
            "sendCountyId": 2819,
            "sendTownId": null,
            "receiveProvinceId": 1,
            "receiveCityId": 72,
            "receiveCountyId": 2819,
            "receiveTownId": null
        },
        {
            "client": "4",
            "entrance": "JDWL-GW"
        }
    ],
    "pubKey": "MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQCSp5eYB2FfHSXhzaUuHHbMfeOJp2dJ/oew7EKwzhLYfRa29d2pXm+rtN4c2HdhR+NGwm/5fY8T3entKq/7qrNBagG8R8tGl604vqteU+8Tjl4SRbQRpm0Il64ruz+xjE4NWJFtr8CWW0U6mA8yjSffSDbvqm87bsxTpHIn2frr/QIDAQAB"
}
getWgEncryptData = function(r) {
                    var n = r.requestData
                      , c = r.pubKey
                      , l = ""
                      , d = ""
                      , m = ""
                      , f = "";
                    try {
                        var h = o()
                          , v = o()
                          , w = new e;
                        w.setPublicKey(c),
                        l = w.encrypt("".concat(h).concat(v)),
                        m = t.enc.Utf8.parse(h),
                        f = t.enc.Utf8.parse(v),
                        d = t.AES.encrypt(JSON.stringify(n), m, {
                            iv: f,
                            mode: t.mode.CBC,
                            padding: t.pad.Pkcs7
                        })
                    } catch (e) {
                        console.log("e", e)
                    }
                    return {
                        ciphertext: l,
                        encryptedData: d,
                        key: m,
                        iv: f
                    }
                }

d = getWgEncryptData(s)

params = {
       ciphertext : d.ciphertext,
        data:d.encryptedData.toString()
}

console.log(params)


http://www.niftyadmin.cn/n/5434603.html

相关文章

Kotlin:为什么创建类不能被继承

一、为什么创建类不能被继承 class或data class 默认情况下,Kotlin 类是最终(final)的:它们不能被继承。 示例:data class PsersonBean 反编译data class PsersonBean 生成 public final class PsersonBean 示例&…

SpringBoot(接受参数相关注解)

文章目录 1.基本介绍2.PathVariable 路径参数获取信息1.代码实例1.index.html2.ParameterController.java3.测试 2.细节说明 3.RequestHeader 请求头获取信息1.代码实例1.index.html2.ParameterController.java3.测试 2.细节说明 4.RequestParameter 请求获取参数信息1.代码实例…

服务器折腾日志

突发噩耗:服务器用不了了。 具体表现为:可以进BIOS系统,但到了登陆界面键鼠失灵,无法输入密码 搜博客,曰: 解决键鼠失灵 1.进入命令行,执行: sudo apt install xserver-xorg-inp…

【C++】类与结构体

类和结构体是面向对象编程中两种常见的数据类型定义方式,它们之间的区别主要体现在以下几个方面: 成员默认访问权限:在类中,默认情况下成员的访问权限是 private 的,即只能被类内部的成员函数访问;而在结构…

单片机之从C语言基础到专家编程 - 4 C语言基础 - 4.11函数

在单片机开发中,一般使用C语言进行编程,C语言提供了一种结构化的编程方法,能有效地管理和控制硬件资源。函数是C语言中的一个基本构建块,它允许开发者将程序分解成更小、更易于管理的部分。 1 函数的基本概念 1)定义…

提高效率:Python电子邮件自动化进阶技巧

目录 写在开头1 高级邮件处理1.1 邮件过滤和排序技巧1.2 使用正则表达式提取邮件信息1.3 自动化客户服务响应 2 自动化邮件管理2.1 批量发送邮件的高级策略2.2 自动回复邮件的智能化2.3 实战应用示例2.4 维护自动化邮件系统的最佳实践 3 数据处理与邮件3.1 如何利用Pandas进行邮…

【海贼王的数据航海】排序——直接选择排序|堆排序

目录 1 -> 选择排序 1.1 -> 基本思想 1.2 -> 直接选择排序 1.2.1 -> 代码实现 1.3 -> 堆排序 1.3.1 -> 代码实现 1 -> 选择排序 1.1 -> 基本思想 每一次从待排序的数据元素中选出最小(或最大)的一个元素,存放在序列的起始位置&…

【前端Vue】Vue3+Pinia小兔鲜电商项目第1篇:认识Vue3,1. Vue3组合式API体验【附代码文档】

全套笔记资料代码移步&#xff1a; 前往gitee仓库查看 感兴趣的小伙伴可以自取哦&#xff0c;欢迎大家点赞转发~ 全套教程部分目录&#xff1a; 部分文件图片&#xff1a; 认识Vue3 1. Vue3组合式API体验 通过 Counter 案例 体验Vue3新引入的组合式API vue <script> ex…