private void HttpFileUpload1(String urlString, String params,String fileName) {
String lineEnd = "\r\n";
String twoHyphens = "--";
String boundary = "*****";
try {
FileInputStream mFileInputStream = new FileInputStream(fileName);
URL connectUrl = new URL("서버url");
Log.d("Test", "mFileInputStream is " + mFileInputStream);
// open connection
HttpURLConnection conn = (HttpURLConnection) connectUrl
.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=" + boundary);
// write data
DataOutputStream dos = new DataOutputStream(conn.getOutputStream());
dos.writeBytes(twoHyphens + boundary + lineEnd);
dos.writeBytes("Content-Disposition: form-data; name=\"bf_file\";filename=\""
+ fileName + "\"" + lineEnd);
dos.writeBytes(lineEnd);
int bytesAvailable = mFileInputStream.available();
int maxBufferSize = 1024;
int bufferSize = Math.min(bytesAvailable, maxBufferSize);
byte[] buffer = new byte[bufferSize];
int bytesRead = mFileInputStream.read(buffer, 0, bufferSize);
Log.d("Test", "image byte is " + bytesRead);
// read image
while (bytesRead > 0) {
dos.write(buffer, 0, bufferSize);
bytesAvailable = mFileInputStream.available();
bufferSize = Math.min(bytesAvailable, maxBufferSize);
bytesRead = mFileInputStream.read(buffer, 0, bufferSize);
}
serverResponseCode = conn.getResponseCode();
String serverResponseMessage = conn.getResponseMessage();
Log.i("uploadFile", "HTTP Response is : " + serverResponseMessage
+ ": " + serverResponseCode);
dos.writeBytes(lineEnd);
dos.writeBytes(twoHyphens + boundary + twoHyphens + lineEnd);
// close streams
Log.e("Test", "File is written");
mFileInputStream.close();
dos.flush(); // finish upload...
// get response
int ch;
InputStream is = conn.getInputStream();
Log.e("-----------", is.toString());
StringBuffer b = new StringBuffer();
while ((ch = is.read()) != -1) {
b.append((char) ch);
}
String s = b.toString();
Log.e("Test", "result = " + s);
dos.close();
} catch (Exception e) {
Log.d("Test", "exception " + e.getMessage());
}
}
위의 예제를 참고해서 이미지 업로드를 했는데 응답코드200 입니다.
응답코드200은 무엇인가요 ? 또 해결방안은 어찌대나요 ? 도와주세요 ..
그리고 사진촬영해서 이미지 업로드 하는 것인데 이미지가 4개인데 write data를 어떤식으로 추가해주어야하는지 모르겠어요.. 파일업로드가 처음이라 어려움이 많아요 .. 조그만한 도움이라도 주심 감사하겠습니다ㅜ ㅜ