안드로이드 개발 질문/답변
(글 수 45,052)
질문이 약간은 자바쪽일수도 있겠네요 ^^;;
HTTP로 POST방식을 이용하여 서버와 통신하기 위해 작성한 코드입니다.
저렇게 하면 넘기는 파라미터들이 잘 넘어가는데요,
저 파라미터들과 파일을 하나 같이 보내고 싶습니다.
구글링좀 해봤는데 파일만 따로 올릴순 있겠는데,
저렇게 필요한 파라미터들을 포함해서 파일과 함께 보낼수 있는 방법이 궁금합니다.
위의 방법으로는 불가능하던데,
추상적으로 가르쳐주셔도 되니 대강 방향이라도 가르쳐주세요 ㅠ
URL url = new URL(URL_ADDRESS); URLConnection conn = url.openConnection(); ((HttpURLConnection)conn).setRequestMethod("POST"); conn.setDoOutput(true); OutputStreamWriter out = new OutputStreamWriter(conn.getOutputStream()); out.write("id=" + id); out.write("&key=" + key); out.write("&content=" + content); out.flush(); conn.connect(); InputStream is = conn.getInputStream(); // 응답코드받을 inputstream
HTTP로 POST방식을 이용하여 서버와 통신하기 위해 작성한 코드입니다.
저렇게 하면 넘기는 파라미터들이 잘 넘어가는데요,
저 파라미터들과 파일을 하나 같이 보내고 싶습니다.
구글링좀 해봤는데 파일만 따로 올릴순 있겠는데,
저렇게 필요한 파라미터들을 포함해서 파일과 함께 보낼수 있는 방법이 궁금합니다.
위의 방법으로는 불가능하던데,
추상적으로 가르쳐주셔도 되니 대강 방향이라도 가르쳐주세요 ㅠ
2010.12.14 14:50:11
파일을 POST로 보내는 것과 동일한 방법으로 보낼 수 있습니다. 여러개의 파일을 보낼 수도 여러개의 파라미터를 넘길 수도 있습니다.
HTTP헤더를 아래처럼 구성하시면됩니다..
Content-Type: multipart/form-data; boundary=---------------------------2038785241003357522047787121
Content-Length: 708363
-----------------------------2038785241003357522047787121
Content-Disposition: form-data; name="id"
ABCDEFGHD<=필요한 파라미터
-----------------------------2038785241003357522047787121
Content-Disposition: form-data; name="upfile"; filename="NR0SGF0C0B_1.jpg"
Content-Type: image/jpeg
ÿØÿà<=파일데이터