2014-07-15 6 views
0

J'essaie d'intégrer la passerelle de paiement Qiwi. Je suivais cette API: https://ishop.qiwi.ru/docs/QIWI_Pull_API_v2.1_eng.pdfDemande PUT: 406 retourné

URL url = new URL("https://w.qiwi.com/api/v2/prv/269946/bills/64785"); 
HttpURLConnection connection = (HttpURLConnection) url.openConnection(); 
connection.setRequestMethod("PUT"); 
connection.setDoOutput(true); 
connection.setDoInput(true); 
connection.setRequestProperty("Accept", "application/xml,text/xml"); 
connection.setRequestProperty("Authorization", "Basic MTIwNTQyOTU6a0ozYk1qYmRFd21lY1lHc0FTazg="); 
connection.setRequestProperty("Content-Type", "application/x-www-form-urlencoded; charset=utf-8"); 
connection.setRequestProperty("Accept-Encoding", "gzip,deflate,sdch"); 
connection.setRequestProperty("Accept-Language", "en-US,en;q=0.8,ms;q=0.6,es;q=0.4"); 

OutputStreamWriter osw = new OutputStreamWriter(connection.getOutputStream());    osw.write("user=tel%3A%2B29743543233&amount=766.90&ccy=AED&comment=PNR+%3A+33330521+User+Mobile+%3A+%2B29743543233&lifetime=2014-07-15T03%3A56%3A16&prv_name=Air+Arabia"); 
osw.flush(); 
osw.close(); 
System.err.println(connection.getResponseCode()); 

code ci-dessus renvoie toujours 406. Je ne peux pas comprendre ce qui est faux. S'il vous plaît aidez-moi avec ceci.

Merci

+0

Ne sais pas si c'est le problème ici, mais "application/x-www-form-urlencoded" n'a pas de paramètre charset. –

Répondre

0

Il y avait quelque chose de mal à l'ordre des paramètres. Ce n'était pas l'ordre qui est mentionné dans l'API. J'ai changé la commande et maintenant tout va bien.

amount=100.03&ccy=USD&comment=PNR : 3333232522 User Mobile : +3762345234&lifetime=2014-07-16T04:39:57&user=tel%3A%2B79346433149&prv_name=Air Arabia 

Merci.

0

Code de réponse 406 indique que la ressource est pas disponible dans le format que vous envoyez comme acceptable dans la demande. Essayez d'omettre les "Accepter" -Propriétés et voyez, si vous obtenez une réponse différente alors.

Vous pouvez également lire sur le code 406 de retour ici: http://httpwg.github.io/specs/rfc7231.html#rfc.section.6.5.6

+0

Merci pour votre réponse. J'ai essayé de supprimer "Accepter" mais la réponse ne change pas .. J'ai essayé d'autres questions de débordement de pile et n'ai pas réussi à résoudre le problème. –

+0

S'il vous plaît éviter de citer des spécifications obsolètes; voir http://httpwg.github.io/specs/rfc7231.html#rfc.section.6.5.6 –

Questions connexes