0

json 文字列 {'post_id': 3} をサーバーに送信する必要があります。put メソッドを使用しています。実行すると、サーバーから 500 エラーが発生します。json データを正しく送信していますか? 助けてください?

   HttpClient httpclient = new DefaultHttpClient();
   HttpPut httput = new HttpPut("my url");
   HttpParams params2 = httpclient.getParams();
   HttpConnectionParams.setConnectionTimeout(params2, 30000);
   String responseBody = "";
   HttpResponse response = null;
   try {
       String base64EncodedCredentials = "Basic " + Base64.encodeToString(
           ("username"+ ":" + "password").getBytes(),
           Base64.NO_WRAP);
       httput.setHeader("Authorization", base64EncodedCredentials);
       httput.setHeader(HTTP.CONTENT_TYPE, "application/json");
       JSONObject obja = new JSONObject();
       try {

            obja.put("post_id","3");

            httput.setEntity(new StringEntity(obj.toString(), "UTF-8"));
                   // Execute HTTP Post Request
                   response = httpclient.execute(httput);
            } catch (JSONException e) {
                // TODO Auto-generated catch block
                e.printStackTrace();
            } catch (UnsupportedEncodingException e) {
                // TODO Auto-generated catch block
                e.printStackTrace();
            } catch (ClientProtocolException e) {
                // TODO Auto-generated catch block
                e.printStackTrace();
            } catch (IOException e) {
                // TODO Auto-generated catch block
                e.printStackTrace();
            } 

       ///

       HttpEntity entity= response.getEntity();
       Log.d("  ", " LIKE RESPONSE " + response.getStatusLine().getStatusCode());
4

1 に答える 1

1

httpリクエストをより簡単にするためにIonを使用してみてください https://github.com/koush/ion、ヘッダーとボディパラメーターをサポートします。また、Webサービス「500」が内部サーバーエラーであることを確認してください

于 2014-02-28T04:43:14.523 に答える