2025-06-20
编程工具
apipost
8

一、预执行操作

1.账号登录
// This code is generated by [Apipost] AI.
function encryptRequestBody() {
    const formData = request.request_bodys;
    let requestBodys = formData;

    if (_.isString(requestBodys)) {
        try {
            requestBodys = JSON5.parse(requestBodys);
        } catch (e) {}
    }

    // 根据实际值修改
    const cryptoKey = 'xxxxxx';

    function aesEncrypt(word, secret) {
        const key = CryptoJS.enc.Utf8.parse(secret);
        const src = CryptoJS.enc.Utf8.parse(word);
        const encrypted = CryptoJS.AES.encrypt(src, key, { mode: CryptoJS.mode.ECB, padding: CryptoJS.pad.Pkcs7 });

        return encrypted.toString();
    }

    if (requestBodys && typeof requestBodys === 'object') {
        if ('account' in requestBodys) {
            requestBodys.account = aesEncrypt(requestBodys.account, cryptoKey);
        }
        if ('password' in requestBodys) {
            requestBodys.password = aesEncrypt(requestBodys.password, cryptoKey);
        }
    }

    pm.setRequestBody(requestBodys);
}
encryptRequestBody();
2.修改密码
// This code is generated by [Apipost] AI.
function encryptRequestBody() {
    const formData = request.request_bodys;
    let requestBodys = formData;

    if (_.isString(requestBodys)) {
        try {
            requestBodys = JSON5.parse(requestBodys);
        } catch (e) {}
    }

     // 根据实际值修改
    const cryptoKey = 'xxxxxx';

    function aesEncrypt(word, secret) {
        const key = CryptoJS.enc.Utf8.parse(secret);
        const src = CryptoJS.enc.Utf8.parse(word);
        const encrypted = CryptoJS.AES.encrypt(src, key, { mode: CryptoJS.mode.ECB, padding: CryptoJS.pad.Pkcs7 });

        return encrypted.toString();
    }

    if (requestBodys && typeof requestBodys === 'object') {
        if ('old_password' in requestBodys) {
            requestBodys.old_password = aesEncrypt(requestBodys.old_password, cryptoKey);
        }
        if ('new_password' in requestBodys) {
            requestBodys.new_password = aesEncrypt(requestBodys.new_password, cryptoKey);
        }
    }

    pm.setRequestBody(requestBodys);
}
encryptRequestBody();

二、后执行操作

1.获取图形验证码
// This code is generated by [Apipost] AI.
function displayImage() {
    try {
        const responseData = pm.response.json();
        const imgUrl = responseData.data.image;
        const template = `
            <style>
              .image-gallery {
                    text-align: center;
                }
              .image-gallery img {
                    max-width: 100%;
                    height: auto;
                    cursor: pointer;
                    border-radius: 8px;
                    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.2);
                }
              .full-view {
                    position: fixed;
                    top: 0;
                    left: 0;
                    width: 100%;
                    height: 100%;
                    background-color: rgba(0, 0, 0, 0.8);
                    display: flex;
                    justify-content: center;
                    align-items: center;
                    z-index: 1000;
                }
              .full-view img {
                    max-width: 90%;
                    max-height: 90%;
                }
            </style>
            <div class="image-gallery">
                <img src="${imgUrl}" alt="Image" onclick="openFullView(this)">
                <div class="full-view" id="fullView" style="display: none;">
                    <img id="fullViewImage" src="">
                    <span style="position: absolute; top: 10px; right: 10px; color: white; font-size: 20px; cursor: pointer;" onclick="closeFullView()">×</span>
                </div>
            </div>
            <script>
                function openFullView(img) {
                    document.getElementById('fullViewImage').src = img.src;
                    document.getElementById('fullView').style.display = 'flex';
                }
                function closeFullView() {
                    document.getElementById('fullView').style.display = 'none';
                }
            </script>
        `;
        pm.visualizer.set(template, {});
    } catch (e) {
        console.error('处理响应数据时出错:', e);
    }
}
displayImage();
标签:

apipost