1
Кто-нибудь знает, почему я получаю ResponseCode 400 на android 2.x? В Android 4.x он работает, и сервер возвращает 200.Android responseCode 400, если Android-версия ниже 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/ ссылка/Java/сеть/HttpURLConnection.html –