0

I have a text/plain file in asset folder. I want to send this file over httpurlconnection as a string or suggest. how to do that. My code is as below:

  java.net.URL url = new URL("https://xx.xx.xx.xxx");
                HttpsURLConnection urlConnection = (HttpsURLConnection)url.openConnection();
                urlConnection.setSSLSocketFactory(getSSLSocketFactory());
                urlConnection.setRequestMethod("POST");
                urlConnection.setReadTimeout(15*10000);
                urlConnection.connect();

                AssetManager assetManager = MainActivity.ctx.getAssets();
                InputStream requestXML = assetManager.open("requestdump");

                String requestString = convertStreamToString(requestXML);

                InputStream in = urlConnection.getInputStream();
                convertStreamToString(in);

Please suggest how to send asset text file over httpurlconnection?

Any help would be appreciated.

Shivv
  • 65
  • 2
  • 11

1 Answers1

0

Use this to send string

URL url = new URL("http://yoururl.com");
HttpsURLConnection conn = (HttpsURLConnection) url.openConnection();
conn.setReadTimeout(10000);
conn.setConnectTimeout(15000);
conn.setRequestMethod("POST");
conn.setDoInput(true);
conn.setDoOutput(true);

List<NameValuePair> params = new ArrayList<NameValuePair>();
params.add(new BasicNameValuePair("firstParam", paramValue1));

OutputStream os = conn.getOutputStream();
BufferedWriter writer = new BufferedWriter(
        new OutputStreamWriter(os, "UTF-8"));
writer.write(getQuery(params));
writer.flush();
writer.close();
os.close();


private String getQuery(List<NameValuePair> params) throws UnsupportedEncodingException
{
    StringBuilder result = new StringBuilder();
    boolean first = true;

    for (NameValuePair pair : params)
    {
        if (first)
            first = false;
        else
            result.append("&");

        result.append(URLEncoder.encode(pair.getName(), "UTF-8"));
        result.append("=");
        result.append(URLEncoder.encode(pair.getValue(), "UTF-8"));
    }

    return result.toString();
}
Fahim
  • 12,198
  • 5
  • 39
  • 57