title: android-async-http post request with body
body: <h2>It's require to realize a function that user can send feedback to the server in the app.And I use the asynchttpclient in the app.But I don't know how to do this.anyont knows how to do please tell me,thank you very much.</h2>
  
  <p>Here is the requirement:</p>
  
  <ol>
  <li>use post request with body(there is a parameter suggestion content)</li>
  <li>api:api/user/feedback?company_id=&amp;access_token=</li>
  </ol>
  
  <p>While I check the post method of asynchttpclient,I just found the following methods:
      public RequestHandle post(String url, ResponseHandlerInterface responseHandler) {
          return post(null, url, null, responseHandler);
      }</p>
  
  <pre><code>// [-] HTTP POST
  // [+] HTTP PUT
  
  /**
   * Perform a HTTP POST request with parameters.
   *
   * @param url             the URL to send the request to.
   * @param params          additional POST parameters or files to send with the request.
   * @param responseHandler the response handler instance that should handle the response.
   * @return RequestHandle of future request process
   */
  public RequestHandle post(String url, RequestParams params, ResponseHandlerInterface responseHandler) {
      return post(null, url, params, responseHandler);
  }
  
  /**
   * Perform a HTTP POST request and track the Android Context which initiated the request.
   *
   * @param context         the Android Context which initiated the request.
   * @param url             the URL to send the request to.
   * @param params          additional POST parameters or files to send with the request.
   * @param responseHandler the response handler instance that should handle the response.
   * @return RequestHandle of future request process
   */
  public RequestHandle post(Context context, String url, RequestParams params, ResponseHandlerInterface responseHandler) {
      return post(context, url, paramsToEntity(params, responseHandler), null, responseHandler);
  }
  
  /**
   * Perform a HTTP POST request and track the Android Context which initiated the request.
   *
   * @param context         the Android Context which initiated the request.
   * @param url             the URL to send the request to.
   * @param entity          a raw {@link cz.msebera.android.httpclient.HttpEntity} to send with the request, for
   *                        example, use this to send string/json/xml payloads to a server by
   *                        passing a {@link cz.msebera.android.httpclient.entity.StringEntity}.
   * @param contentType     the content type of the payload you are sending, for example
   *                        application/json if sending a json payload.
   * @param responseHandler the response ha   ndler instance that should handle the response.
   * @return RequestHandle of future request process
   */
  public RequestHandle post(Context context, String url, HttpEntity entity, String contentType, ResponseHandlerInterface responseHandler) {
      return sendRequest(httpClient, httpContext, addEntityToRequestBase(new HttpPost(getURI(url)), entity), contentType, responseHandler, context);
  }
  
  /**
   * Perform a HTTP POST request and track the Android Context which initiated the request. Set
   * headers only for this request
   *
   * @param context         the Android Context which initiated the request.
   * @param url             the URL to send the request to.
   * @param headers         set headers only for this request
   * @param params          additional POST parameters to send with the request.
   * @param contentType     the content type of the payload you are sending, for example
   *                        application/json if sending a json payload.
   * @param responseHandler the response handler instance that should handle the response.
   * @return RequestHandle of future request process
   */
  public RequestHandle post(Context context, String url, Header[] headers, RequestParams params, String contentType,
                            ResponseHandlerInterface responseHandler) {
      HttpEntityEnclosingRequestBase request = new HttpPost(getURI(url));
      if (params != null) request.setEntity(paramsToEntity(params, responseHandler));
      if (headers != null) request.setHeaders(headers);
      return sendRequest(httpClient, httpContext, request, contentType,
              responseHandler, context);
  }
  
  /**
   * Perform a HTTP POST request and track the Android Context which initiated the request. Set
   * headers only for this request
   *
   * @param context         the Android Context which initiated the request.
   * @param url             the URL to send the request to.
   * @param headers         set headers only for this request
   * @param entity          a raw {@link HttpEntity} to send with the request, for example, use
   *                        this to send string/json/xml payloads to a server by passing a {@link
   *                        cz.msebera.android.httpclient.entity.StringEntity}.
   * @param contentType     the content type of the payload you are sending, for example
   *                        application/json if sending a json payload.
   * @param responseHandler the response handler instance that should handle the response.
   * @return RequestHandle of future request process
   */
  public RequestHandle post(Context context, String url, Header[] headers, HttpEntity entity, String contentType,
                            ResponseHandlerInterface responseHandler) {
      HttpEntityEnclosingRequestBase request = addEntityToRequestBase(new HttpPost(getURI(url)), entity);
      if (headers != null) request.setHeaders(headers);
      return sendRequest(httpClient, httpContext, request, contentType, responseHandler, context);
  }
  </code></pre>