请求body处理

BodyHandler允许您获取请求主体,限制body sizes和处理文件上传。

首先我们在路由处理的最开始添加BodyHandler.

router.route().handler(BodyHandler.create());

获取请求主体

如果你知道主体是JSON,你可以用getBodyAsJson,如果是String,你可以用getBodyAsString,或者将它作为缓冲区

getBody。

限制Body Sizes

我们可以使用setBodyLimit来指定Body的最大Size.这可以避免加载大文件耗尽内存。如果文件大于这个值,则会返回错误413.

默认情况下不存在限制。

合并表单属性

默认情况下,主体处理程序会把任何表单属性合并到请求参数中,如果你不需要,可以用setMergeFormAttributes.

处理文件上传

Body处理程序也用户处理多部分文件上传。

如果Body处理程序位于请求的匹配路径上,则任何文件上传都将会传送到上传目录,这是uploads默认情况下的操作。

每个文件会自动生成一个名称,可以用fileUploads获取上传文件。

如下:

router.route().handler(BodyHandler.create());

router.post("/some/path/uploads").handler(routingContext -> {

  Set<FileUpload> uploads = routingContext.fileUploads();
  // Do something with uploads....

});

FileUpload可以来描述上传文件的各种属性如名称,文件名,大小。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值