2014-07-15 5 views
0

Qiwi Payment 게이트웨이를 통합하려고합니다. 코드 위 https://ishop.qiwi.ru/docs/QIWI_Pull_API_v2.1_eng.pdfPUT 요청 : 406 반송 됨

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()); 

항상 406을 내가 잘못이 무엇인지 알아낼 수 없습니다 반환 :이 API를 따랐다. 도와주세요.

+0

Dunno 여기에 문제가 있는지 여부가 "application/x-www-form-urlencoded"에는 charset 매개 변수가 없습니다. –

답변

0

:

또한 여기에 406 리턴 코드에 대해 읽을 수 있습니다. API에 언급 된 순서가 아닙니다. 주문을 변경했는데 이제는 괜찮습니다.

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 

감사합니다.

0

응답 코드 (406)가 요청 된 리소스는 요청에로 인정 보내는 형식으로 사용할 수 없음을 나타냅니다 감사합니다. "Accept"-Properties를 생략하고 다른 응답을 얻으면보십시오. 매개 변수의 순서 문제 몇 가지 일이 있었다 http://httpwg.github.io/specs/rfc7231.html#rfc.section.6.5.6

+0

답장을 보내 주셔서 감사합니다. 나는 "Accept"를 제거하려했지만 응답은 변하지 않습니다 .. 다른 스택 오버 플로우 관련 질문을 시도했으나 문제를 해결할 수 없었습니다. –

+0

오래된 사양을 언급하지 마십시오. http://httpwg.github.io/specs/rfc7231.html#rfc.section.6.5.6을 참조하십시오. –