需求如下:
1.接口测试需要对请求体进行SM4加密;
2.生成签名报文:时间戳、随机16位字符串、加密后的请求报文、appid、证书序列号
3.使用SHA256withRSA算法对待签名报文进行签名、签名使用base64格式编码
4.将签名后的信息放入header中的Authorization
问题如下:
使用postmen工具进行上方的加密和签名、需要使用到postmen中的Pre-request Script、语言是JavaScript
需要使用对应的加密模块、可是运行时会报错:Error: Cannot find module ‘crypto’
如何在postmen中引用或者安装外部模块?
代码如下:
// 引用crypto模块
var crypto = require(‘crypto’);
// 要签名的数据
var data = ‘nonceChars’ +‘00dfba8194c41b84cf’;
// 使用私钥进行签名
var privateKey = 私钥
;
var sign = crypto.createSign(‘RSA-SHA256’);
sign.update(data);
var signature = sign.sign(privateKey, ‘base64’);
pm.globals.set(“signature”, signature);