1
누군가가 내가 안드로이드 2.x에서 ResponseCode 400을 얻는 이유를 알고 있습니까? Android 4.x에서는 작동하고 서버는 200을 반환합니다.안드로이드 버전 4보다 낮은 안드로이드 버전
URL url = new URL(url_in);
URI uri = new URI(url.getProtocol(), url.getUserInfo(), url.getHost(), url.getPort(), url.getPath(), url.getQuery(), url.getRef());
url = uri.toURL();
HttpURLConnection c = (HttpURLConnection) url.openConnection();
c.setRequestMethod("GET");
c.setRequestProperty("Accept-Encoding", "identity");
c.setRequestProperty("Accept-Charset", "UTF-8");
c.setRequestProperty("Content-Type", "text/html");
c.setConnectTimeout(timeout);
c.setReadTimeout(timeout);
c.connect();
int status = c.getResponseCode();
차이점은 무엇입니까?
에서 피 버그 나는 정확히 문제가 무엇인지 잘 모르겠지만, 2.X는 HttpURLConnection의 4.x의가보다 다른 구현을했다. 2.x에서는 HttpClient를 사용하는 것이 좋지만 4.x에서는 HttpUrlConnection을 사용하는 것이 좋습니다. 또한 URL에서 URI로 변환 한 다음 다시 URL로 다시 변환하는 이유는 무엇입니까? 왜 그냥 URL의 첫 번째 가치를 사용하지 않습니까? – GreyBeardedGeek
죄송합니다. URL과 uri는 남은 것입니다 .. 테스트 중입니다. 확인이 게시물 ... http://stackoverflow.com/a/8067181/1847899 이 .. 발견하는 경우 (주제 : 이전 릴리스에서 피 버그) http://developer.android.com/ reference/java/net/HttpURLConnection.html –