您的位置:首页 > 理论基础 > 计算机网络

HTTP:浏览器请求实例,自定义服务器

2014-12-29 23:16 351 查看
package com.franky.net.http;

import java.io.IOException;
import java.io.InputStream;
import java.io.OutputStream;
import java.io.PrintWriter;
import java.net.ServerSocket;
import java.net.Socket;

/** 自定义web服务器,实现浏览器自定义访问页面
 * @author Administrator
 *
 */
public class MyServer {

	public static void main(String[] args) throws IOException{
		//建立服务器对象,并指定端口号
		ServerSocket ss = new ServerSocket(9091);
		//接收客户端socket实例
		Socket s = ss.accept();
		//得到客户端socket的输入流
		InputStream is = s.getInputStream();
		byte[] b = new byte[1024];
		int len = 0;
		len = is.read(b);
		System.out.println(new String(b,0,len));
//		控制台的输出数据
//		GET / HTTP/1.1
//		Host: 127.0.0.1:9091
//		Connection: keep-alive
//		Cache-Control: max-age=0
//		Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8
//		User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/33.0.1750.146 BIDUBrowser/6.x Safari/537.36
//		Accept-Encoding: gzip,deflate
//		Accept-Language: zh-CN,zh;q=0.8
		//获取客户端socket输出流
		OutputStream os = s.getOutputStream();
		PrintWriter pw = new PrintWriter(os,true);
		//向客户端浏览器发送自定义页面
		pw.println("<font size='7' color='green'>这是自定义的服务器哈哈</font>");
		//关闭客户端socket连接,关闭服务器连接
		s.close();
		ss.close();
	}
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: