$ .post вызов jax-rs не получает данные JSON - PullRequest
0 голосов
/ 29 января 2019

Невозможно прочитать данные в формате 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) {

1 Ответ

0 голосов
/ 30 января 2019

В 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 :)
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...