```js // 引入 CryptoJS 库用于计算签名 const CryptoJS = require('crypto-js'); // 准备所需的值 const tenantId = "ImCHJ2JGEMfHFplZ"; // 替换为你的 tenantId const tenantKey = "zwsz0SoPOmulqvH7"; // 替换为你的 tenantKey const datetime = "2024-06-12T16:00:00+08:00"; // 固定的日期时间 // 计算 SHA256 哈希值,生成签名 const dataToSign = tenantId + datetime + tenantKey; // 将 tenantId、datetime 和 tenantKey 拼接成一个字符串 const sign = CryptoJS.SHA256(dataToSign).toString(CryptoJS.enc.Hex); // 使用 SHA256 生成签名,并将其转换为 Hex 格式 console.log("Data to be signed:", dataToSign); console.log("Generated sign:", sign); // 发送请求以获取 IBStoken pm.sendRequest({ url: 'http://dev.p.cdn.10086.cn:8080/api/authentication', // 替换为获取 IBStoken 的接口地址 method: 'POST', // 使用 POST 方法 header: { 'Content-Type': 'application/json', // 指定请求体的数据类型为 JSON 'Accept': 'application/vnd.cmcdn+json' // 指定请求头接受的响应类型 }, body: { mode: 'raw', // 设置请求体模式为 raw,即原始 JSON 字符串 raw: JSON.stringify({ "authorization": { "tenant_id": tenantId, "sign": sign }, "datetime": datetime }) } }, function (err, res) { // 检查请求是否出现错误 if (err) { console.error('Error fetching IBStoken:', err); // 输出错误信息 } else { // 解析响应体为 JSON 格式 const response = res.json(); console.log('Response received:', response); // 打印完整的响应 // 假设 IBStoken 在响应体中以 `token` 字段返回 const IBStoken = response.token; if (IBStoken) { // 设置全局变量 IBStoken1 为返回的 token pm.globals.set("IBStoken1", IBStoken); console.log('IBStoken set successfully:', IBStoken); // 打印获取到的 IBStoken } else { console.warn('Token not found in response.'); // 如果响应中没有 token 字段,打印警告 } } }); ```