代码拉取完成,页面将自动刷新
一个基于 raw-body 的 koa
请求内容解析器;支持的解析类型有 text
、form
、json
、raw
。
npm install koa-bodyparser-base
let Koa = require('koa');
let bodyParser = require('koa-bodyparser-base');
let app = new Koa();
let.use(bodyParser());
let.use(async (ctx) => {
// 解析后的请求内容将存放到 ctx.request.body 上
// 如果没有解析到对应的请求,则 body 将是 undefined
ctx.body = ctx.request.body;
});
bodyParser([options]);
json
请求时,使用 raw-body
解析时需要的参数,默认:{ limit: '1mb', encoding: true }
form
请求时,使用 raw-body
解析时需要的参数,默认 { limit: '56kb', encoding: true }
。text
请求时,使用 raw-body
解析时需要的参数,默认 { limit: '1mb', encoding: true }
。raw
请求时,使用 raw-body
解析时需要的参数,默认 { limit: '100kb', encoding: true }
。app.use(bodyparser({
extendTypes: {
// 转换请求类型(content-type) 为 `application/x-javascript` 的请求内容为 `json` 格式。
json: ['application/x-javascript']
}
}));
ctx.disableBodyParse = true
来禁用解析。
app.use(async (ctx, next) => {
if (ctx.path === '/disable') {
ctx.disableBodyParse = true;
}
await next();
});
app.use(bodyparser());
备注:
limit
参数为 bytes 所支持的参数格式;encoding
参数为 iconv-lite 所支持的编码格式。- 如果格式为
form
返回的是querystring.parse()
解析后的对象,该对象跟普通的Object
是不同的,详情参考:querystring_parse
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。