I am trying to upload an image from an Android device to a remote server. So far I have the following code, but the image stored on the remote server is always zero.
HttpURLConnection conn; String serverpath = "http://110.172.27.47:9499"; String MREPORTER_SERVLET_PATH="/mreporter/servlet/MReporterServlet"; url = serverpath + MREPORTER_SERVLET_PATH; try { URL url = new URL( serverpath + MREPORTER_SERVLET_PATH ); conn = (HttpURLConnection) url.openConnection(); conn.setDoInput(true); conn.setDoOutput(true); conn.setUseCaches(false); conn.setRequestMethod("POST"); conn.setRequestProperty("Connection", "Keep-Alive"); conn.setRequestProperty("Content-Type", "multipart/form-data;boundary="+ "*****" ); conn.setRequestProperty(USER_NAME_REQUEST_PARAMETER, "parth"); conn.setRequestProperty(EVENT_NAME_REQUEST_PARAMETER, "null" ); conn.setRequestProperty(CAMERAID_REQUEST_PARAMETER, "1"); conn.setRequestProperty(ACTION_MODE_PARAMETER, "POST_DATA_ACTION" ); DataOutputStream dos = new DataOutputStream(conn.getOutputStream()); Log.i("Response", conn.getResponseCode() + "" ); int response = conn.getResponseCode(); if ( response == 200 ) { Log.i("size",data.length + ""); if ( data.length > 0 ) { dos.write(data); Log.i("200","OK" ); } else { Log.i( "Error", response + "" ); } }
source share