62,614
社区成员
发帖
与我相关
我的任务
分享
import java.net.*;
import java.io.*;
public class HTTPClient {
String host="www.javathinker.org";
int port=80;
Socket socket;
public void createSocket()throws Exception{
socket=new Socket("www.163.com",80);
}
public void communicate()throws Exception{
StringBuffer sb = new StringBuffer("GET / HTTP/1.1\r\n");
sb.append("Host: www.163.com\r\n");
sb.append("Connection: Keep-Alive\r\n");
sb.append("Accept: */*\r\n");
//发出HTTP请求
OutputStream socketOut=socket.getOutputStream();
socketOut.write(sb.toString().getBytes());
socket.shutdownOutput(); //关闭输出流
//接收响应结果
System.out.println(socket);
InputStream socketIn=socket.getInputStream();
BufferedReader br=new BufferedReader(new InputStreamReader(socketIn));
String data;
while((data=br.readLine())!=null){
System.out.println(data);
}
socket.close();
}
public static void main(String args[])throws Exception{
HTTPClient client=new HTTPClient();
client.createSocket();
client.communicate();
}
}
package socket;
import java.io.*;
import java.net.*;
public class MyHttpClient {
public static void main(String[] args) throws Exception{
InetAddress inet = InetAddress.getByName("www.baidu.com");
System.out.println(inet.getHostAddress());
Socket socket = new Socket(inet.getHostAddress(),80);
InputStream in = socket.getInputStream();
OutputStream out = socket.getOutputStream();
BufferedReader reader = new BufferedReader(new InputStreamReader(in));
PrintWriter writer = new PrintWriter(out);
writer.println("GET /home.html HTTP/1.1");//home.html是关于百度的页面
writer.println("Accept: image/gif, image/x-xbitmap, image/jpeg, image/pjpeg, application/x-shockwave-flash, application/xaml+xml, application/vnd.ms-xpsdocument, application/x-ms-xbap, application/x-ms-application, application/msword, application/vnd.ms-excel, application/vnd.ms-powerpoint, */*");
writer.println("Accept-Language: en-us,zh-cn;q=0.5");
writer.println("Accept-Encoding: gzip, deflate");
writer.println("Host: www.baidu.com");
writer.println("User-Agent: Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; .NET CLR 1.1.4322; .NET CLR 2.0.50727; .NET CLR 3.0.04506.30; .NET CLR 3.0.4506.2152; .NET CLR 3.5.30729)");
writer.println("Connection: Keep-Alive");
writer.println();
writer.flush();
String line = reader.readLine();
while(line!=null){
System.out.println(line);
line = reader.readLine();
}
reader.close();
writer.close();
}
}
sb.append("Accept: */*\r\n");
sb.append("\r\n");
public static void main(String[] a) throws UnknownHostException, IOException{
String sLine = "";
InputStream in;
java.net.URL url = new java.net.URL("http://www.google.cn/");
HttpURLConnection connection = (HttpURLConnection) url.openConnection();
connection.connect();
in = connection.getInputStream();
BufferedReader reader = new BufferedReader(new java.io.InputStreamReader(in));
while ((sLine = reader.readLine()) != null)
{
System.out.println(sLine);
}
}