【问题标题】:API not receiving information with @PostMapping, but with @RequestMapping yes. Spring Boot, Kotlin, REST APIAPI 未使用@PostMapping 接收信息,但使用@RequestMapping 是。 Spring Boot、Kotlin、REST API
【发布时间】:2018-11-07 03:09:09
【问题描述】:

我正在尝试通过邮递员保存一个新的“proyecto”。

我正在使用:

  • Spring Boot 2.0.6.RELEASE。 Kotlin 1.2.71 Java 8。

我使用了@PostMapping 注释,但它向我发送了空值,但如果我使用@RequestMapping,它可以正常工作。 当我尝试一种或另一种方法时,我会注释代码以避免冲突。

ProyectoController.kt

@RestController
@RequestMapping("/proyectos")
class  ProyectoController {
    @Autowired
    lateinit var proyectoService : ProyectoService

    //Not working
    @PostMapping("/")
    fun createProyecto(proyecto: Proyecto): Proyecto {
        return proyectoService.createProyecto(proyecto)
    }

    //Working
    @RequestMapping("/", method = arrayOf(RequestMethod.POST))
    fun createProyeto2(@RequestBody proyecto: Proyecto): Proyecto{
        return proyectoService.createProyecto(proyecto)
    }
}

Proyecto.kt

@Document(collection = "proyectos")
@TypeAlias("proyecto")
data class Proyecto (
        @Id
        var id: String?,
        var nombre: String,
        var area: String,
        var fecha:String
)

@PostMapping 的邮递员请求

@RequestMapping 的邮递员请求

【问题讨论】:

    标签: spring rest kotlin


    【解决方案1】:

    似乎少了一个注释; @RequestBody 在有问题的端点中。尝试拥有;

    @PostMapping("/")
    fun createProyecto(@RequestBody proyecto: Proyecto): Proyecto {
        return proyectoService.createProyecto(proyecto)
    }
    

    【讨论】:

      猜你喜欢
      • 2022-11-04
      • 1970-01-01
      • 2018-07-15
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-04-11
      • 2019-12-09
      相关资源
      最近更新 更多