Java-Trikot RESTful Webservice-Anfragen
Ich habe ein Tutorial über einen erholsamen Service verfolgt und es funktioniert einwandfrei. Es gibt jedoch etwas, das ich noch nicht ganz verstehe. So sieht es aus:
@Path("/hello")
public class Hello {
// This method is called if TEXT_PLAIN is request
@GET
@Produces( MediaType.TEXT_PLAIN )
public String sayPlainTextHello()
{
return "Plain hello!";
}
@GET
@Produces( MediaType.APPLICATION_JSON )
public String sayJsonTextHello()
{
return "Json hello!";
}
// This method is called if XML is request
@GET
@Produces(MediaType.TEXT_XML)
public String sayXMLHello() {
return "<?xml version=\"1.0\"?>" + "<hello> Hello Jersey" + "</hello>";
}
// This method is called if HTML is request
@GET
@Produces(MediaType.TEXT_HTML)
public String sayHtmlHello()
{
return "<html> " + "<title>" + "Hello fittemil" + "</title>"
+ "<body><h1>" + "Hello!" + "</body></h1>" + "</html> ";
}
}
Was mich stört, ist, dass ich die richtigen Operationen nicht anwenden kann. Wenn ich den Dienst von einem Browser anfordere, wird die entsprechende sayHtmlHello () -Methode aufgerufen. Aber jetzt entwickle ich eine Android-Anwendung, mit der ich das Ergebnis in Json erhalten möchte. Wenn ich den Dienst jedoch von der Anwendung aus aufrufe, wird die MediaType.TEXT_PLAIN-Methode aufgerufen. Mein Android-Code sieht ungefähr so aus:
Stellen Sie eine HTTP-Anfrage mit Android
Wie kann ich die Methode, die MediaType.APPLICATION_JSON verwendet, in meiner Android-Anwendung aufrufen? Weiterhin möchte ich, dass diese bestimmte Methode ein Objekt zurückgibt, wäre großartig, wenn ich dort auch eine Anleitung bekommen hätte.