0
나는 응답 읽으려고
(뿐만 아니라이 응답하지만를이 사이트에서이 많은) 여기 내 함수의 코드입니다 :응답 인코딩 HttpConnection에 GET HTML 텍스트
// HTTP POST request
private void sendFirstPost() throws Exception {
String url = "http://g1.botva.ru/login.php";
URL obj = new URL(url);
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setInstanceFollowRedirects(false);
//add reuqest header
con.setRequestMethod("POST");
con.setRequestProperty("Accept", "*/*");
con.setRequestProperty("Accept-Encoding", "gzip, deflate");
//con.setRequestProperty("Content-Length", "86");
con.setRequestProperty("Content-Type", "application/x-www-form-urlencoded");
con.setRequestProperty("User-Agent", "runscope/0.1");
String urlParameters = "do_cmd=login&remember=1&password=avmalyutin1234&server=1&email=avmalyutin%40mail.ru";
// Send post request
con.setDoOutput(true);
DataOutputStream wr = new DataOutputStream(con.getOutputStream());
wr.writeBytes(urlParameters);
wr.flush();
wr.close();
int responseCode = con.getResponseCode();
System.out.println("\nSending 'POST' request to URL : " + url);
System.out.println("Post parameters : " + urlParameters);
System.out.println("Response Code : " + responseCode);
System.out.println("Content Type : " + con.getContentType());
BufferedReader in = new BufferedReader(
new InputStreamReader(con.getInputStream(), "cp1251"));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
response.append(inputLine);
}
in.close();
//print result
System.out.println(response.toString());
byte [] array = response.toString().getBytes("cp1251");
String buffff = new String(array);
System.out.println(buffff);
}
콘텐츠 유형 I로는 text/html을 받으십시오. charset = cp1251. 나는 cp1251, windows-1251 인코딩을 사용하려고합니다. 좋은 결과는 없습니다. 일단 HTML 텍스트를 얻을 수 있었지만 이후에는 소스 코드를 변경하지 않고 이후에 실행해도 읽을 수없는 심볼 만 출력됩니다. 그렇다면 어떻게 HTML과 같은 텍스트를 적절히 응답 할 수 있습니까?