서버를 HTTP로 가져 와서 데이터를 읽고 동일한 소켓 연결을 통해 HTTP GET 또는 POST를 다시 수행하려고합니다. 그러나 나는 두 번째 request.What에 대한 응답은 다음 코드로 잘못 될 수 있습니다 얻을 수 없습니다입니다 :소켓 연결을 통한 다중 HTTP 요청
Socket s = new Socket(InetAddress.getByName("xyz.abc.asd"), 80);
InputStream is=s.getInputStream();
OutputStream os=s.getOutputStream();
PrintWriter pwGET = new PrintWriter(os);
pwGET.println("GET /login/ HTTP/1.1");
pwGET.println("Host: xyz.abc.asd");
pwGET.println("Connection: keep-alive");
pwGET.println("");
pwGET.flush();
BufferedReader brGET = new BufferedReader(new InputStreamReader(is));
String t=null;
while((t = brGET.readLine()) != null) {
System.out.println(t);
}
pwGET.println("GET /login/ HTTP/1.1");
pwGET.println("Host: xyz.abc.asd");
pwGET.println("Connection: keep-alive");
pwGET.println("");
pwGET.flush();
BufferedReader br = new BufferedReader(new InputStreamReader(is));
t=null;
while((t = br.readLine()) != null) {
System.out.println(t);
}
두 번째 요청을하기 위해 반복하는 동안 루프를 종료했음을 확인할 수 있습니까? – Geremy
예. 첫 번째 요청의 응답을 읽고 성공적으로 인쇄 할 수 있습니다. while 루프를 종료하고 단어 뒤에 일부 인쇄를 실행하십시오. 그러나 나는 두 번째 요청을 읽거나 얻을 수 없다. – WillMcavoy