PDA

Просмотр полной версии : Java - HttpURLConnection Как сделать HTTP/1.0 ?


tvcool
19.11.2007, 03:53
Мне нужно на Javе подсоединится к серверу с помощью HttpURLConnection по протоколу HTTP/1.0.
Как это сделать ?
default = HTTP/1.1

Primuss
19.11.2007, 11:16
Попробуй явно указывать версию HTTP как в примере:


String url = "http://www.marchal.com/",
proxy = "proxy.mydomain.com",
port = "8080",
authentication = "usr:pwd";
URL server = new URL(url);
Socket socket = new Socket(proxy,port);
Writer writer = new OutputStreamWriter(socket.getOutputStream(),
"US-ASCII");
writer.write("GET " + server.toExternalForm() + " HTTP/1.0\r\n");
writer.write("Host: " + server.getHost() + "\r\n");
writer.write("Proxy-Authorization: Basic "
+ new sun.misc.BASE64Encoder().encode(
authentication.getBytes())
+ "\r\n\r\n");
writer.flush();
BufferedReader reader = new BufferedReader(new InputStreamReader(
socket.getInputStream(),"US-ASCII"));
String line = reader.readLine();
if(line != null && line.startsWith("HTTP/"))
{
int sp = line.indexOf(' ');
String status = line.substring(sp + 1,sp + 4);
if(status.equals("200"))
{
while(line.length() != 0)
line = reader.readLine();
readResponse(reader);
}
else
throw new FileNotFoundException("Host reports error " +
status);
}
else
throw new IOException("Bad protocol");
reader.close();
writer.close();
socket.close();

tvcool
19.11.2007, 23:20
Так ты не используешь HttpURLConnection...

RaZEr
20.11.2007, 09:11
http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=4143677

tvcool
20.11.2007, 19:30
RaZEr, Мда не хорошо...

Где можно найти подробный материал по persistant/non persistant connections и по piplining, желательно с образцами на JAVA.