使用 Postman 编码变量

Har*_*a W 7 encoding json postman

是否可以使用 Postman 本身对变量进行编码?

前任 :

{
  "UserName": "Admin0011@test.com",
  "Password": "test@123",
  "ConfirmPassword": "test@123",
  "Role": "SuperAdmin"
}
Run Code Online (Sandbox Code Playgroud)

是否可以使用 Postman 本身对密码字段进行编码并将其发送到服务器?我在 body/header 部分中传递上述 JSON 数据。

是否可以在 Postman 内部做这样的事情

base64UrlEncode(Password) 
Run Code Online (Sandbox Code Playgroud)

Nox*_*Nox 15

这是我处理连接到 appigee ouath 的密钥/秘密编码的方法

let keys = pm.environment.get("key") + ":" + pm.environment.get("secret");
let encodedKeys = CryptoJS.enc.Base64.stringify(CryptoJS.enc.Utf8.parse(keys));

pm.environment.set("encodedKeys", encodedKeys);
Run Code Online (Sandbox Code Playgroud)

仅使用当前接受的答案所建议的 stringify 我得到了一个奇怪的错误,指出 r.clamp 不是一个函数。为了解决这个问题,我必须先解析密钥。


小智 7

可以使用Postman Pre-request ScriptsPostman Environment Variables

第一步是设置要加密的变量。

接下来,编写脚本。Postman 内置了 CryptoJs,可用于对字符串进行编码。这是 Base64 编码字符串并将环境变量设置为编码值的示例脚本:

var plainText = pm.environment.get('plainTextString');
var encrypted = CryptoJS.enc.Base64.stringify(plainText);

console.log(`Encrypted value: ${encrypted}`) //if you want to see the value in the console
pm.environment.set("myEncryptedRequestVariable", encrypted);
Run Code Online (Sandbox Code Playgroud)

最后,使用以下语法在请求正文(或标头)中使用加密变量:

{{myEncryptedRequestVariable}} 
Run Code Online (Sandbox Code Playgroud)

  • 我在使用上述示例代码让 CryptoJS 编码字符串时遇到了问题。/sf/ask/3396711671/ 上的答案帮助我弄清楚首​​先使用 ```CryptoJS.enc.Utf8.parse 将我的字符串转换为 Utf8 或其他(string);``` 首先将其传递给 Base64.stringify。 (5认同)
  • @P.Roe 这个问题与加密无关。 (3认同)