04-postman

1. shortcut

释义shortcut
BeautifyCmd + B

1. Tabs

释义shortcut
Open New TabCmd + T
Close TabCmd + W
Force Close TabCmd + opt + W
Switch To Next TabCmd + shift + ]
Switch To Previous TabCmd + shift + [
Switch To Tab at PositionCmd + 1 ... 8
Switch To Last TabCmd + 9
Reopen Last Closed TabCmd + shift + T

2. Request

释义shortcut
Request URLCmd + L
Save RequestCmd + S
Save Request AsCmd + shift + S
Send RequestCmd + enter
Send And Download RequestCmd + opt + enter
Scroll To RequestCmd + opt + 上
Scroll To ResponseCmd + opt + 下

3. Sidebar

释义shortcut
Search SidebarCmd + F
Toggle SidebarCmd + \
Next Item
Previous Item
Expand Item
Collapse Item
Select ItemEnter
Open Request In A New TabCmd + shift + click
Rename ItemCmd + E
Group ItemsCmd + G
Cut ItemCmd + X
Copy ItemCmd + C
Paste ItemCmd + V
Duplicate ItemCmd + D
Delete Itemdelete

4. Interface

释义shortcut
Zoom InCmd + +
Zoom OutCmd + -
Reset ZoomCmd + 0
Toggle Two-Pane ViewCmd + opt + V
Switch Workspace ViewCmd + .

5. Windows and modals

释义shortcut
New...Cmd + N
New Postman WindowCmd + shift + N
New Runner WindowCmd + shift + R
New Console WindowCmd + shift + C
FindCmd + shift + F
ImportCmd + O
Manage EnvironmentsCmd + opt + E
SettingsCmd + .
Submit ModalCmd + enter
Open Shortcut HelpCmd + /

2. 保存

1. 添加Examples

6401711501715_.pic

2. form-data类型参数的拷贝

eVBYTStjMERYMDZhdHd0L0xpTTQ4OU9ENVJpR2xiTUU1cTNkcHI4PQ==

3. Export-Import

NEZJaFRwREc4bHRFYzFOcDJjd0JKdE9ENVJpR2xiTUU1cTNkcHIvUk53PT0=
QWFLTEN1Tmo4WUQvTnFsaGpraVBTZE9ENVJpR2xiTUU1cTNkcHIvUk53PT0=

4. Variable

  • 局部环境,全局
LzJybnExZnU1MEFWNGNaMThLb3djTk9ENVJpR2xiTUU1cTNkcHIvUk53PT0=

5. 参数空格

Y1NXOGFPRnpTK1lyYkZ0bVJNa1V1OU9ENVJpR2xiTUU1cTNkcHIvUk53PT0=

6. 请求拦截

1. Interceptor

6461711501742_.pic

2. Interceptor Bridge

6471711501747_.pic

3. 添加域domain

  • 设置拦截请求路径
6481711501751_.pic
eW4vdEtzZ2lUYkJ2WVZnbU1laVlHOU9ENVJpR2xiTUU1cTNkcHIvUk53PT0=

7. 传参日期类型

ckRVS1BxTllmdXJuQ2s3UXlSMmhETk9ENVJpR2xiTUU1cTNkcHIvUk53PT0=

8. 参数上传文件

Postman 上传文件请求open in new window

L1NwSlRyRTRjQUJhLzdhSkdSYVk3OU9ENVJpR2xiTUU1cTNkcHIvUk53PT0=
@Override
public ResultUtil<Boolean> oxUpload(MultipartFile file) {
    try {
        byte[] bytes = file.getBytes();
        String jsonStr = new String(bytes);
        this.ooxxService.ooxxData(jsonStr);
        return ResultUtil.success(true);
    } catch (ResultException e) {
        throw e;
    } catch (Exception e) {
        e.printStackTrace();
        // todo 日志记录
    }
}

1. PPERM

postman运行collection上传文件脚本 console报错 Form param file, file load error: PPERM: insecure file access outside working directory解决办法open in new window

Form param file, file load error: PPERM: insecure file access outside working directory

R2xtK1BkaVlyZEhZcDl4WS9Wd0NyTk9ENVJpR2xiTUU1cTNkcHIvUk53PT0=
  • 开启《Read files outside working directory》
image-20240409105942473

9. request code

1. 生成请求代码

6521711502141_.pic

1. x-www-form-urlencoded

var req = JSON.parse(request.data);
var credential = req.credential;

var data = "plaintext=" + credential;

const echoPostRequest = {
    url: pm.environment.get("url") + '/ooxx/sm2',
    method: 'POST',
    header: 'Content-Type: application/x-www-form-urlencoded',
    body: {
        mode: 'x-www-form-urlencoded',
        raw: data
    }
};

pm.sendRequest(echoPostRequest, function (err, res) {
    console.log(err ? err : res.json());
});

2. json

const echoPostRequest = {
    url: pm.environment.get("url") + '/ooxx/App/sign',
    method: 'POST',
    header: 'Content-Type:application/json',
    body: {
        mode: 'raw',
        raw: request.data
    }
};

pm.sendRequest(echoPostRequest, function (err, res) {
    console.log(err ? err : res.json());
    var rst = res.json();
    postman.setGlobalVariable("ot", rst.ot);
    postman.setGlobalVariable("secretKey", rst.secretKey);
});

2. Pre-request Script

1. 前置请求

  • 实例:签名
1. post
const echoPostRequest = {
    url: pm.environment.get("url") + '/ooxx/App/sign',
    method: 'POST',
    header: 'Content-Type:application/json',
    body: {
        mode: 'raw',
        raw: request.data
    }
};

pm.sendRequest(echoPostRequest, function (err, res) {
    console.log(err ? err : res.json());
    var rst = res.json();
    postman.setGlobalVariable("ot", rst.ot);
    postman.setGlobalVariable("secretKey", rst.secretKey);
});
2. get
pm.sendRequest("https://postman-echo.com/get", function (err, response) {
    console.log(response.json());
});

2. 请求集合加前置

SzNIVXYzM00rOGJsRzlKZURPTUx5dE9ENVJpR2xiTUU1cTNkcHI4PQ==
RW0zUWVndUM2ZHdGT09BY3BRaTY1OU9ENVJpR2xiTUU1cTNkcHIvUk53PT0=

3. test

1. 响应复用

// 返回值
var data = JSON.parse(responseBody)

// 设置全局变量
pm.globals.set("ot", data.ot);
pm.globals.set("secretKey", data.secretKey);

2. 请求集合加后置

elA5aVVyNTZ1MG1FdVhXVURCMVJ3dE9ENVJpR2xiTUU1cTNkcHIvUk53PT0=

10. 变量

1. 全局变量

pm.globals.get("variable_key");

pm.globals.set("variable_key", "variable_value");
UnlWSUVxYlJhM2VSM1Z3ZkFzS3pCZE9ENVJpR2xiTUU1cTNkcHIvUk53PT0=

2. 环境变量

pm.environment.get("variable_key");

pm.environment.set("variable_key", "variable_value");
ZEZwb09yNkl3U3VHcVo4RjM1MklkOU9ENVJpR2xiTUU1cTNkcHIvUk53PT0=

3. 集合变量

pm.collectionVariables.get("variable_key");

pm.collectionVariables.set("variable_key", "variable_value");
MGxCbk9odmZzTlZTc1ExTnRsY1U5dE9ENVJpR2xiTUU1cTNkcHIvUk53PT0=
Q3pYVS9lOE4yeUJoSVlTR1djbmpoTk9ENVJpR2xiTUU1cTNkcHIvUk53PT0=

4. 局部变量

局部变量不会在会话之间持久存在,但是允许您在执行请求或收集/监视运行期间临时覆盖所有其他范围。

pm.variables.set("variable_key", "variable_value");

// 此方法将返回当前优先级最高(或范围最窄)的任何变量。
pm.variables.get("variable_key");

5. 变量获取

1. row json

两边要加引号

Sy9WcGp2SkZqbytmRXBDcmw5ZjNEdE9ENVJpR2xiTUU1cTNkcHIvUk53PT0=

2. x-www-form-urlencoded

Um1PSzhVMXpjR0NBc0F6S2duZFc2ZE9ENVJpR2xiTUU1cTNkcHIvUk53PT0=