Pages

jeudi 4 juillet 2013

Faire une requête HTTP POST via wget envoyant du Json à un service REST

Mon besoin était le suivant ==> Invoquer via WGETun service REST accessible via la méthode HTTP POST et attendant en entrée un flux Json. Ce service renvoie une réponse au format texte que je dois stocker dans un fichier. 

Ce besoin était pourtant assez simple et j'ai eu du mal à trouver la bonne syntaxe. Je vous la fait donc partager

Exemple de service REST
@POST
@Consumes(MediaType.APPLICATION_JSON)
@Produces(MediaType.TEXT_PLAIN)
@Path("/test")
public String create(MonDto monDto) {
        Preconditions.checkNotNull(monDto.getName(), "name is required");
        return "OK";
}

Appel WGET
wget -O retour.txt --header="Content-Type:application/json" 
--post-data "{\"name\":\"TOTO\"}"   
http://localhost:8080/mywebapp/api/test/ > trace.log

Cette commande invoque notre service REST, redirige les logs vers trace.log et écrit le résultat dans le fichier retour.txt

Aucun commentaire:

Enregistrer un commentaire

Remarque : Seul un membre de ce blog est autorisé à enregistrer un commentaire.