$.post 调用 jax-rs 未接收 JSON 数据



无法读取 JSON 格式的数据。我想接收在帖子中发送的 json 对象。

    $.post(url + 'SelfService/login/validate', {key: self.key, value: 
    self.value},function(data, status, xhr) {
    alert("Data Loaded: " + data);
    },'json');

@POST
@Path("/validate")
@Produces(MediaType.APPLICATION_JSON)
public String validate(String data) {

在 Jax-RS 中,您可以接收映射到类的 JSON 对象。

假设您发布一个 { "id": 123, "name": "Shahar" }

最简单的方法是创建一个可序列化的类

@XmlRootElement
public class YourClass {
   private Integer id;
   private String name;
   //Must have default constructor
   public YourClass() {
   }
   public YourClass(Integer id, String name) {
    this.id = id;
    this.name = name;
   }
   public Integer getId() {
     return id;
   }
   public void setId(Integer id) {
     this.id = id;
   }
   public String getName() {
     return name;
   }
   public void setName(String name) {
     this.title = title;
   }
}

并将其定义为资源中的参数,如下所示:

@POST
@Path("/validate")
@Consumes(MediaType.APPLICATION_JSON)
public Response validate(YourClass data){
 //interact with data :)
}

最新更新