在 Postman 调用期间变量不会出现空值

Variables are not coming up null during Postman call

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

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

我的 Pojo Student Class

      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
}

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

public class StudentRequest {
  List<StudentR>;

  // Getter and Setter or not in case you use lombok

  class StudenR {
     String user;
     Long duration ;
  }
}

你的请求正文应该是这样的:

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

因为您将 StudentRequest 作为 RequestBody 获取,这意味着您应该在请求中发送 StudentRequest 不包含 StudentRequest 自身的内部属性, 第二个问题是你的 RequestBody 包含单一对象而不是数组 .