1.0.4 • Published 5 months ago

app-lib-mock-server-parse v1.0.4

Weekly downloads
-
License
ISC
Repository
-
Last release
5 months ago

app-lib-mock-server-parse

Body解析中间件

一、背景介绍

插件指定交互过程中的解析方式和顺序
在日常中有一些不规则的定义 比如json定义content-type 后用text解析
统一个服务下多中解析方式自动支持

二、功能描述

三、注意事项

  1. 扩展的解析
  • 由于类似json 其实是text的请求需要兼容处理
  • 针对在body-parser读取stream只能一次,中添加解析文本结果用于下一次使用,会出现两个问题:
    1. 下一次的解析还会是上一次的解析内容 及中间件的json和text等 会按照第一个解析方式进行文本的解析
    2. 后续有必要的情况下 进行body-parser下的read.js 进行扩展,将流进行复制 用于下一次正常解析。【important】
  1. 一样使用该中间件基于app-mock-server工程 依赖的类库都存在express中,故没有独立的依赖到组件里。

四、使用案列

  • 中间件参宿配置
    https://github.com/expressjs/body-parser 采用body-parser解析
    "params": {
        "paraseType": [ // 支持解析方式
          "json", 
          "raw",
          "text",
          "urlencoded"
        ],
        "match": {  // 指定url的解析方式  目前未开发
          "url": "json"
        },
        "json": {}, // 每种解析的配置
        "text": {
          "type": "*/*", // 匹配content-type
          "defaultCharset":"utf-8", // 编码方式
          "inflate":true,
          "limit":"100kb",
          "verify":
          "forceParse":true, // 强制解析 不管是否为text/*  content-type
        },
        "raw": {},
        "urlencoded": {}
      }

五、todo列表

六、API

七、发布日志

1.0.4

5 months ago