[Kotlin]SpringBoot 获取原生HTTP Requ

2019-04-28  本文已影响0人  Tsun424

背景:
SpringBoot日常开发中不需要接触原生HTTP Request,框架本身已经实现了request请求自动转化model/vo/dto对象,但有时特殊场景需要获取、操纵原生HTTP Request内容。

Kotlin实现:
在Controller中通过如下方式可以获取到HTTP Request并转为JSON格式

val request = (RequestContextHolder.currentRequestAttributes() as ServletRequestAttributes).request
val json = request.getReader().lines().collect(Collectors.joining(System.lineSeparator()))

进而,可以获取jacksonObjectMapper,然后实例化对应model,此处应该有一些业务逻辑,否则直接通过SpringBoot框架在controller中自动实例化即可。

val mapper = jacksonObjectMapper()

... some logic

mapper.readValue<UserModel>(json)

上一篇下一篇

猜你喜欢

热点阅读