Я новичок в веб-службах.У меня есть рабочая конечная точка, которая возвращает мне JSON с данными о человеке, если параметры (идентификатор и пароль) указаны правильно.
Например:
http://www.issdigitalthe.com.br/controleacesso/servico/api/login/4/SMT/000000000000/password/false
Где 000000000000 - мой идентификатор, а «пароль» - мой пароль.
Тестирование с помощью PostMan (POST), это мое возвращение:
"id": 40001002131,
"idOriginal": 123131,
"cpfCnpj": "000000000",
"nome": "JOHN DOE",
"idCargo": 131313131,
"descricaoCargo": "Usuário responsável por analisar e Deferir/Indeferir os Protocolos.",
"idDepartamento": 4000200000000761,
"descricaoDepartamento": "Departamento para usuários ",
"login": "000000000",
"email": "john@gmail.com",
"ultimoAcesso": 1537824078846,
"certificadoDigital": "N",
"dataCriacao": null,
"bairro": "Bairro",
"cep": "64020340",
"complemento": "Quadra 00 Casa 111",
"dddCelular": "86 ",
"dddTelefone": "86 ",
"celular": "99999999",
"telefone": "86 ",
"uf": "PI",
"municipio": "SÃO PAULO",
Мне нужно использовать этот сервис, чтобы проверить, верен ли возврат или нет.Вот мой код:
import javax.faces.bean.ManagedBean;
import javax.ws.rs.Consumes;
import javax.ws.rs.POST;
import javax.ws.rs.Path;
import javax.ws.rs.Produces;
import javax.ws.rs.core.MediaType;
import com.sun.jersey.api.client.Client;
import com.sun.jersey.api.client.WebResource;
@Path("/")
@ManagedBean
public class WebServiceLoginMB {
@POST
@Consumes(MediaType.APPLICATION_JSON)
@Produces(MediaType.APPLICATION_JSON + MediaType.TEXT_HTML)
public String getDados() {
Client c = Client.create();
WebResource wr = c.resource("//www.issdigitalthe.com.br/controleacesso/servico/api/login/4/SMT/000000000000/password/false);
return wr.get(String.class);
}
}
Сначала я просто пытался увидеть возврат на моей консоли Glassfish, а затем я проверял, верен ли возврат или нет.Но я всегда получаю "возвращенный статус ответа метода 405. Метод не разрешен".
Это сработало так:
public static void ws(String user, String pass) {
try {
Client client = Client.create();
WebResource webResource = client.resource(
"http://www.issdigitalthe.com.br/controleacesso/servico/api/login/4/SMT/"+ user + "/"+ pass + "/false");
ClientResponse response = webResource.type("application/json").post(ClientResponse.class);
String output = response.getEntity(String.class);
Gson gson = new Gson();
PessoaNota pessoa = gson.fromJson(output, PessoaNota.class);
System.out.println(pessoa.getNome());
} catch (Exception e) {
e.printStackTrace();
}
}
Я знаю, что все еще нужно кое-что отрегулировать, ноПервая проблема была решена.Спасибо всем, кто помог.