我有一個RESTful API,我可以通過執行以下稱:如何利用HttpURLConnection類發送POST請求使用JSON數據
捲曲-H「內容類型:應用程序/ JSON」 -d「{‘URL’ :「http://www.example.com」}」 http://www.example.com/post
在Java中,當我從捲曲打印出接收到的請求數據,我正確地得到以下數據:
Log: Data grabbed for POST data: {"url":"http://www.example.com/url"}
但是當我通過Java發送POST請求使用HttpClient/HttpPost,我得到格式不好的數據,不允許我從JSON獲取鍵值。
Log: Data grabbed for POST data: url=http%3A%2F%2Fwww.example.com%2Furl
在Java中,我這樣做:
HttpClient httpclient = new DefaultHttpClient();
HttpPost httppost = new HttpPost("http://www.example.com/post/");
List<BasicNameValuePair> nameValuePairs = new ArrayList<BasicNameValuePair>();
BasicNameValuePair nvp1 = new BasicNameValuePair("url", "http://www.example.com/url);
nameValuePairs.add(nvp1);
httppost.setEntity(new UrlEncodedFormEntity(nameValuePairs));
HttpResponse httpresponse = httpclient.execute(httppost);
如何讓這個從Java請求是在類似的數據是如何發送條款捲曲?
考慮使用Jersey:jersey.java.net – 2014-10-10 20:32:31
我對HttpClient/HttpPost知之甚少,但他們是否將數據作爲JSON字符串發送?你不需要在標題中設置內容類型嗎? – Leo 2014-10-10 21:36:16