在邮递员调用期间,变量不会显示为空



设置Java Postman调用,为变量赋值,但其显示为空。

@PostMapping("/caStudents/student")
public String generateSignedValue(@RequestBody StudentRequest studentRequest) throws Exception  
String signedValue=studentService.getSignedValue(studentRequest);
return signedValue;

我的波乔Student

public class StudentRequest {
String user;
Long duration ;
public String getPublicKey() {
return publicKey;
}
public void setPublicKey(String publicKey) {
this.publicKey = publicKey;
}
public String getUser() {
return user;
}
public void setUser(String user) {
this.user = user;
}
public Long getDuration() {
return duration;
}
public void setDuration(Long duration) {
this.duration = duration;
}

邮递员请求

{"studentRequest":[{"user":"admin","duration":19336}]}

您的请求正文应如下所示:

{"user":"admin","duration":19336}

因为您StudentRequestRequestBody,这意味着您应该在请求中发送不包含StudentRequest的内部属性StudentRequest, 第二个问题是您的RequestBody包含单数对象而不是数组。

根据您提供给我们的内容,您的请求实际上应该是

{
"user": "admin",
"duration": 19336
}

如果你想一次提供多个学生请求(在一个数组中),那么你StudenRequest类应该看起来像这样:

public class StudentRequest {
List<StudentR>;
// Getter and Setter or not in case you use lombok
class StudenR {
String user;
Long duration ;
}
}

最新更新