`

httpserver 第一个server代码模拟

 
阅读更多

 

 

1 server方法内分为三步骤,

start()   receive()  stop()

 

2 客户端就是浏览器,建立好服务端后在客户端中输入 ip:端口即可访问到

 

3 代码如下:

 

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.net.ServerSocket;
import java.net.Socket;

/**
 * 创建服务器,并启动
 * @author Administrator
 在浏览器中输入  http://localhost:8888  可以在控制台打印浏览器请求过来的信息
 
 打印结果如下:
 GET / HTTP/1.1
Host: localhost:8888
Connection: keep-alive
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/31.0.1650.63 Safari/537.36
Accept-Encoding: gzip,deflate,sdch
Accept-Language: zh-CN,zh;q=0.8

 */
public class Server {
	private ServerSocket server;
	/**
	 * @param args
	 */
	public static void main(String[] args) {
	
		Server server = new Server();
		server.start();
		
		
	}
	/**
	 * 启动方法
	 */
	public void start(){		
		try {
			server = new ServerSocket(8888);
			this.receive();
		} catch (IOException e) {
			e.printStackTrace();
		}
	
	}
	/**
	 * 接收客户端
	 */
	private void receive(){
		try {
			Socket client =server.accept();
			StringBuilder sb =new StringBuilder();
			String msg =null;
			
			BufferedReader br = new BufferedReader(new InputStreamReader(client.getInputStream()));
			
			while((msg=br.readLine()).length()>0){
				sb.append(msg);
				sb.append("\r\n");
				
			}
			//接收客户端的请求信息
			String requestInfo =sb.toString().trim();		
			System.out.println(requestInfo);
			
		} catch (IOException e) {
			//e.printStackTrace();
		}
	}
	
	/**
	 * 听着服务器
	 */
	public void stop(){
		
	}
	
	
}

 

分享到:
评论

相关推荐

    go-wasm-http-server:将您的Go HTTP处理程序嵌入到ServiceWorker中,并模拟HTTP服务器!

    要求go-wasm-http-server要求您将Go应用程序构建到WebAssembly,因此您需要确保代码兼容: 没有C绑定没有系统依赖性,例如文件系统或网络(例如数据库服务器) 用法 第1步:构建到js/wasm 在您的Go代码中,将...

    Go语言服务器开发实现最简单HTTP的GET与POST接口

    本文实例讲述了Go语言服务器开发实现最简单HTTP的GET与POST接口。分享给大家供大家参考。具体分析如下: Go语言提供了http包,可以很轻松的开发http接口。以下为示例代码: ... //第一个参数为客户端发起http请求

    一个基于WEB的聊天室代码

    这个代码的开发环境为:vs2008+sqlserver2005+微软企业库+net fwk3.5 其实用vs2005+2.0框架也可以,虽然使用的是3.5的框架,但是并没有使用3.5框架的新特性 经检查发现里面确实没有类设计图,也没有服务器端的源代码 ...

    JAVA上百实例源码以及开源项目源代码

     当用户发送第一次请求的时候,验证用户登录,创建一个该qq号和服务器端保持通讯连接得线程,启动该通讯线程,通讯完毕,关闭Scoket。  QQ客户端登录界面,中部有三个JPanel,有一个叫选项卡窗口管理。还可以更新...

    java源码包---java 源码 大量 实例

     当用户发送第一次请求的时候,验证用户登录,创建一个该qq号和服务器端保持通讯连接得线程,启动该通讯线程,通讯完毕,关闭Scoket。  QQ客户端登录界面,中部有三个JPanel,有一个叫选项卡窗口管理。还可以更新...

    FileZilla Server 0.9.33 汉化版

    FileZilla Server 是一款超强的开源免费 FTP 服务器软件,该软件作者 的另一款 FTP 客户端软件(FileZilla)广泛受到大家的好评。 FileZilla Server 包含下列主要功能: * 允许无限制数量的用户 * 多线程引擎 * 可以在...

    一个用于Web游戏的聊天室(包括设计文档和源代码)

    这个代码的开发环境为:vs2008+sqlserver2005+微软企业库+net fwk3.5 其实用vs2005+2.0框架也可以,虽然使用的是3.5的框架,但是并没有使用3.5框架的新特性 经检查发现里面确实没有类设计图,也没有服务器端的源代码 ...

    java源码包2

    第一步:运行ServerData.java 启动服务器,然后服务器处于等待状态 第二步:运行LoginData.java 启动(客户端)登陆界面 输入用户名 ip为本机localhost 第三步:在登陆后的界面文本框输入文本,然后发送 可以同时...

    ASP.NET的网页代码模型及生命周期

    但是与.cs页面编译过程不同的是,当浏览者第一次浏览到.aspx页面时,ASP.NET自动生成该页的.NET类文件,并将其编译成另一个.DLL文件。 当浏览者再一次浏览该页面的时候,生成的.DLL就会在服务器上运行,并响应用户在...

    JAVA上百实例源码以及开源项目

    第一步:运行ServerData.java 启动服务器,然后服务器处于等待状态 第二步:运行LoginData.java 启动(客户端)登陆界面 输入用户名 ip为本机localhost 第三步:在登陆后的界面文本框输入文本,然后发送 可以同时启动...

    模拟服务器:易于使用,没有多余的装饰http模拟服务器

    模拟服务器 易于使用,没有多余的http模拟服务器。 假设您正在开发与一个或多个API服务对话的前端应用程序。 在开发环境中本地运行时,您需要以... 创建您的第一个处理程序文件mock-server/get.js module . exports =

    成百上千个Java 源码DEMO 4(1-4是独立压缩包)

    Calendar万年历 1个目标文件 EJB 模拟银行ATM流程及操作源代码 6个目标文件,EJB来模拟银行ATM机的流程及操作:获取系统属性,初始化JNDI,取得Home对象的引用,创建EJB对象,并将当前的计数器初始化,调用每一个...

    成百上千个Java 源码DEMO 3(1-4是独立压缩包)

    Calendar万年历 1个目标文件 EJB 模拟银行ATM流程及操作源代码 6个目标文件,EJB来模拟银行ATM机的流程及操作:获取系统属性,初始化JNDI,取得Home对象的引用,创建EJB对象,并将当前的计数器初始化,调用每一个...

    java源码包3

    第一步:运行ServerData.java 启动服务器,然后服务器处于等待状态 第二步:运行LoginData.java 启动(客户端)登陆界面 输入用户名 ip为本机localhost 第三步:在登陆后的界面文本框输入文本,然后发送 可以同时...

    java源码包4

    第一步:运行ServerData.java 启动服务器,然后服务器处于等待状态 第二步:运行LoginData.java 启动(客户端)登陆界面 输入用户名 ip为本机localhost 第三步:在登陆后的界面文本框输入文本,然后发送 可以同时...

    fake-luogu-paintboard-server:模拟洛谷冬日绘板服务器,可用于测试脚本

    fake-luogu-paintboard-server 模拟服务器,可用于测试脚本。 安装/运行 NPM npm install -g fake-luogu-paintboard-server ...返回一个包含 WIDTH 行的字符串,其中第 i 行包含 HEIGHT 个字符,其中的第 j 个字符是绘

    计算机二级《Web程序设计》模拟及答案.docx

    它控制在HTTP响应消息中,将消息发送给浏览器 (2)Request(请求)对象:它在一个HTTP请求过程中,获取由浏览器传送给服务器的'消息 计算机二级《Web程序设计》模拟及答案全文共2页,当前为第1页。(3)Server(服务器)...

    vue+AI智能机器人回复功能实现

    前端代码是参考github上的一个开源项目,里面包括AI机器人回复和聊天室两个模块,这里只抽取出来一个AI机器人回复的前端,有兴趣的话,可以点击查看 封装好代理与请求 因为第三方API的请求是外网的,存在跨域问题,...

    mockserver-client-node:适用于浏览器,Node.js或任何Grunt构建的MockServer javascript客户端

    模拟服务器-客户端节点从任何节点或grunt版本与通信社区待办事项: 特色请求: 问题/错误: 聊天:入门允许您模拟通过HTTP或HTTPS(即(REST)服务,网站等)与之集成的任何系统。 请注意,这是需要Java的第三方项目...

Global site tag (gtag.js) - Google Analytics