【发布时间】:2020-07-02 02:52:05
【问题描述】:
我正在传递如下所示的 curl 中的 json 对象,并希望检索数据。它返回 200,但返回空对象。不确定问题出在哪里。
@RequestMapping(value = "/api", produces = "application/json")
public interface ApiController {
@PostMapping("/submitJob")
JobSubmitResultDTO submitJob(@RequestBody JobSubmitRequestDTO request);
}
@RestController
public class ApiController implements ApiController {
@Override
public ResultIntDTO answerToCall(String name) {
return new ResultIntDTO(10);
}
@Override
public JobSubmitResultDTO submitJob(JobSubmitRequestDTO request) {
//Create an instance of JobSubmitResultDTO
JobSubmitResultDTO response = new JobSubmitResultDTO();
//print from the object
System.out.println(request.getParamsMap());
return response;
@Data
public class JobSubmitRequestDTO {
Map<String,Object> paramsMap = new HashMap<String,Object>();
}
@Data
public class JobSubmitResultDTO {
String jobID;
String message;
}
卷曲命令:
curl -X POST -H "Content-type: Application/json" -d "{ "paramsMap": {"key1": "value1"}}" http://XXXXXX:XXXX/api/submitJob
命令行中的预期输出打印:
System.out.println(request.getParamsMap()); -> {"key1": "value1"} (Expected)
打印出意外输出:
System.out.println(request.getParamsMap()); -> {} (unExpected)
我想知道为什么它返回 {},而不是 {"key1": "value1"}。
知道我做错了什么吗?
【问题讨论】:
标签: java spring api object curl