美文网首页
如何将postman接口文档导入到rap

如何将postman接口文档导入到rap

作者: 王小杰at2019 | 来源:发表于2019-02-13 17:53 被阅读41次

什么是 postman

postman 是一款 rest 接口调试工具


image.png

什么是rap

RAP是一个可视化接口管理工具 通过分析接口结构,动态生成模拟数据,校验真实接口正确性, 围绕接口定义,通过一系列自动化工具提升我们的协作效率。我们的口号:提高效率,回家吃晚饭!

image.png

相关性

postman 是我们开发调试 的一个工具而 rap 可以作为我们团队文档分享的一款工具他们有很多相似之处,作为程序猿懒是必须的,如果太勤奋了就不要做程序了..
下面我们看看怎么将postman 文件转入到rap上面去

开发nodejs命令行工具

#!/usr/bin/env node


let path = process.argv[2];
console.log(path);

const fs = require('fs');
let postMan = JSON.parse(fs.readFileSync(path, "utf-8"));
console.log("加载postman配置文件成功")

let rap = {
    "moduleList": [{
        "name": "某模块(点击编辑后双击修改)",
        "id": 108,
        "pageList": [],
        "id": 166,
        "introduction": ""
    }
    ],
    "introduction": ""
};

rap.moduleList[0].name = postMan.info.name;
rap.moduleList[0].introduction = postMan.info.description;


let items = {
    "name": "默认",
    "description": "未分类",
    item: []
};

for (let item of postMan.item) {
    if ('request' in item) {
        items.item.push(item);
    }
}
postMan.item.push(items);

for (let item of postMan.item) {
    // 一级
    if ('request' in item) {
        continue;
    }
    //  文件夹--- >page
    let page = {
        "id": 0,
        "name": "",
        "introduction": "",
        actionList: []
    };
    page.name = item.name;
    page.description = item.description;

    for (let request  of    item.item) {
        //请求项目
        let action = {
            "responseParameterList": [],
            "responseTemplate": "",
            "requestParameterList": [],
            "requestType": "2",
            "requestUrl": "/restful/leavingMessageProxyService/add",
            "name": "01添加留言",
            "description": "",
            "id": 762
        };
        action.name = request.name;
        action.uri = request.request.url;
        let method = 1;
        switch (request.request.method) {
            // 1.GET    2.POST  3.PUT   4.DELETE
            case "GET":
                method = 1;
                break;
            case "POST":
                method = 2;
                break;
            case "PUT":
                method = 3;
                break;
            case "DELETE":
                method = 4;
                break;
        }
        action.requestType = method;
        // 请求参数
        for (let rp  of request.request.body.urlencoded) {
            let request = {
                "identifier": "userId",
                "dataType": "string",
                "name": "发布者",
                "validator": "",
                "parameterList": [],
                "remark": "",
                "id": 13083
            };
            request.identifier = rp.key;
            request.name = rp.description;
            action.requestParameterList.push(request)
        }
        page.actionList.push(action);
    }
    rap.moduleList[0].pageList.push(page);
}

let b = {"modelJSON": JSON.stringify(rap)};
fs.writeFileSync(path.replace('postman_collection.', ''), JSON.stringify(b), "utf-8")
console.log("导出成功")

导出 postman配置文件

  1. image.png
  2. image.png
  3. 执行上面我们的命令
  4. 将结果文件导出rap中

相关文章

网友评论

      本文标题:如何将postman接口文档导入到rap

      本文链接:https://www.haomeiwen.com/subject/zvgdeqtx.html