0

json を保存するための 2 つのパラメーターを受け入れる Web サービスがあります: fileName と json 文字列です。この Web サービスに json 文字列を投稿する必要があります。How to send a JSON object over Request with Android? で概説されている方法を試しました。しかし、うまくいかないようです。ポインタはありますか??

public void postDataToServer(String url, String jsonStr) throws ClientProtocolException, IOException
  {
      int TIMEOUT_MILLISEC = 10000;  // = 10 seconds
      HttpParams httpParams = new BasicHttpParams();
      HttpConnectionParams.setConnectionTimeout(httpParams, TIMEOUT_MILLISEC);
      HttpConnectionParams.setSoTimeout(httpParams, TIMEOUT_MILLISEC);
      httpParams.setParameter("fileName","testFile");
      httpParams.setParameter("json",jsonStr);
      HttpClient client = new DefaultHttpClient(httpParams);

      HttpPost request = new HttpPost(url);
      request.setEntity(new ByteArrayEntity(
          jsonStr.getBytes("UTF8")));
      HttpResponse response = client.execute(request);

  }
4

2 に答える 2

0

fileName と json は httpParams には入りません。彼らはエンティティに入ります。HttpEntity を使用する必要があります。ほとんどの場合、http: //developer.android.com/reference/org/apache/http/client/entity/UrlEncodedFormEntity.html を 2 つの BasicNameValuePair で使用します。1 つは fileName 用、もう 1 つは json 用です。

于 2012-08-22T10:05:16.300 に答える