Apache HttpClient comportement du Post différent suivant OS
bonjour
j'ai écrit une lib cliente pour envoyer des Post Http vers mon serveur d'appli
ma lib fonctionne bien sous windows vers un serveur linux
mais depuis peu j'ai fais des tests sous mac et là bizarrement l'encodage des paramètres est différent, c'est à dire que coté serveur je ne reçois pas la même chose avec la même requête
mes caractères accentués posent problème (le à devient à par exemple)
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
|
private HttpClient client = new HttpClient();
...
PostMethod postMethod = new PostMethod("chemin de l'appli");
postMethod.setRequestHeader("Content-Type", "application/x-www-form-urlencoded; charset=utf-8");
ArrayList<NameValuePair> params = new ArrayList<NameValuePair>();
NameValuePair nameValuePair1 = new NameValuePair("param1", param1);
params.add(nameValuePair1);
NameValuePair nameValuePair2 = new NameValuePair("param2", param2);
params.add(nameValuePair2);
postMethod.addParameters(params.toArray(new NameValuePair[] {}));
this.client.executeMethod(getHostConfiguration(), postMethod); |
ps : getHostConfiguration() retourne une configuration particulière si l'url commence par https mais ce n'est pas mon cas d'exemple.
dans cet exemple la méthode renvoie
Code:
1 2 3 4 5 6 7
|
private HostConfiguration getHostConfiguration() {
this.hostConfiguration = new HostConfiguration();
this.hostConfiguration.setHost(this.url.getHost(), port, protocol);
} |
donc au final ma lib ne fonctionne pas bien sous mac et donc problème
une idée ?