2013-02-28 4 views
0

Je dois envoyer des données dans une URL semblable à ceci:envoyer des données avec poste à uri

http://webservices.fecth.es/school/message/sendmessage/id/myStringId/destination/myStringDestination/msg/myMessage

J'ai les données nécessaires dans les chaînes, mais pas comme l'envoyer par la poste, j'ai testé ce code, mais ne fonctionne pas:

String postURL = "http://webservices.fecth.es/school/message/sendmessage/"; 
HttpPost post = new HttpPost(postURL); 
List<NameValuePair> param = new ArrayList<NameValuePair>(); 
param.add(new BasicNameValuePair("id", myId)); 
param.add(new BasicNameValuePair("destination", myStringDestination)); 
param.add(new BasicNameValuePair("msg", myMessage)); 

UrlEncodedFormEntity ent = new UrlEncodedFormEntity(param,HTTP.ISO_8859_1); 
post.setEntity(ent); 
HttpResponse responsePOST = client.execute(post); 
HttpEntity resEntity = responsePOST.getEntity(); 

Ils pourraient m'aider avec mon problème?

Merci beaucoup

+0

DonT ajouter comme un param. Simple l'ajouter avec l'url. –

+0

Rajesh suggérer le bon appraoch ... –

Répondre

1

Essayez ceci:

StringBuffer postURL = new StringBuffer("http://webservices.fecth.es/school/message/sendmessage/"); 
postURL.append("id/"); 
postURL.append(URLEncoder.encode(myId, "UTF-8")); 
postURL.append("/destination/"); 
postURL.append(URLEncoder.encode(myStringDestination, "UTF-8")); 
postURL.append("/msg/"); 
postURL.append(URLEncoder.encode(myMessage, "UTF-8")); 

HttpPost post = new HttpPost(postURL.toString()); 
HttpResponse responsePOST = client.execute(post); 
HttpEntity resEntity = responsePOST.getEntity(); 
+0

Merci pour la réponse, j'ai essayé le code très excité, je pense que c'est ce dont j'ai besoin. Mais cela n'a pas fonctionné, je peux voir l'URL qui a été créée pour envoyer? Est-il possible que l'URL finale soit ici? 'postURL.toString()' – jlopez

+0

Oui, mettez au point ou imprimez-le en utilisant l'instruction Log pour vérifier le contenu. De plus, quand vous dites "ça n'a pas marché", veuillez préciser quelle est exactement l'erreur que vous avez commise. – Rajesh

+0

Fonctionne pour moi, merci! – jlopez

0

S'il vous plaît vérifier l'état avec code suivant

responsePOST.getStatusLine().getStatusCode() 
+0

Je reçois la valeur 200 – jlopez

Questions connexes