Код: Выделить всё
URL url = new URL(lnk);
HttpURLConnection connection = (HttpURLConnection)url.openConnection();
connection.setRequestMethod("POST");
connection.setRequestProperty( "Content-Type", "application/x-www-form-urlencoded");
connection.setRequestProperty( "Content-Length", String.valueOf(data.length()));
connection.setDoOutput(true);
connection.setDoInput(true);
OutputStream out_stream = connection.getOutputStream();
out_stream.write(data.getBytes("UTF-8"));
С передачей латинских символов все в порядке. Но при передаче кириллицы, последняя строка выбрасывает исключение:
exceeded content-length limit of 31 bytes
Самое удивительное, что этот код в Windows, с кириллицей работает нормально. Что для меня стало большим открытием. Раньше я думал, что Java одинаково работает на всех платформах.
Подскажите, как можно исправить? И по чему на разных платформах, по разному работает?