JAVA Socket编程 通过浏览器访问网页

通过java的socket编程实现,本地电脑的9098端口作为服务器,让网页访问该端口,网页能够正常展示页面。除了要使用基本的socket流进行字符的传递之外。还要实现网页的http通信协议。也就是发送请求头和响应头。具体代码如下:

package com.zijin.socketdemo.demo1;

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.PrintWriter;
import java.net.ServerSocket;
import java.net.Socket;
import java.util.Random;

public class HttpServerDemo1 {

	public static void main(String[] args) throws IOException {
		//创建服务器socket
		ServerSocket ss = new ServerSocket(9098);
		//监听并建立连接
		Socket s1 = ss.accept();
		System.out.println("有应用程序连接");
		
		//接受浏览器的请求消息
		BufferedReader br = new BufferedReader(new InputStreamReader(s1.getInputStream()));
		String input = "";
		while((input = br.readLine()) != null && !input.equals("")) {
			System.out.println(input);
		}
		
		//输出网页内容到浏览器
		PrintWriter pw = new PrintWriter(s1.getOutputStream(),true);
		pw.print("http/1.1 200 ok\n" + "\n\n"
				+ "<!DOCTYPE html><html><head><meta charset=\"UTF-8\"></head><style>.classA{\n"
				+ "		    margin: auto;\n" + "		    font-size: 80px;\n" + "			width: 830px;\n"
				+ "			height: 200px;\n" + "			background-color: #"+new Random().nextInt(10)+ "9DD55;\n" + "			\n"
				+ "		}</style><body><div class=\"classA\">web服务器发来的页面</div></body></html>");
		
		//关闭资源
		pw.close();
		br.close();
		s1.close();
		ss.close();
	}
}

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值