使用自定义服务器、浏览器作为客户端访问
2012-03-26 23:47
363 查看
package com.hsj.net.login; import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.io.PrintWriter; import java.net.Socket; public class BSThread implements Runnable { private Socket s; public BSThread(Socket s) { this.s=s; } public void run() { try { BufferedReader in=new BufferedReader(new InputStreamReader(s.getInputStream())); PrintWriter out=new PrintWriter(s.getOutputStream(),true); String info=null; while((info=in.readLine())!=null){ System.out.println(info); if(info.trim().length()<=0) break; } out.println("你好,欢迎免费使用我们的软件"); s.close(); } catch ( Exception e) { e.printStackTrace(); } } }
package com.hsj.net.login; import java.net.ServerSocket; import java.net.Socket; /** * 服务端:自定义 * 客户端:浏览器,telent * @author heshengjun * */ public class BSDemo { public static void main(String[] args) throws Exception { ServerSocket ss=new ServerSocket(10010); while(true){ Socket s=ss.accept(); String ip=s.getInetAddress().getHostAddress(); System.out.println("ip: "+ip); new Thread(new BSThread(s)).start(); } } }
这里有一个问题需要注意,对于浏览器发送过来的数据,最后面使用一个空行来区分消息头和正文。所以我们读取消息头的时候使用判断标志需要注意一下。不然会阻塞,程序停止运行
相关文章推荐
- 使用tomcat 来搭建本地服务器 ,使用Android 客户端(真机)通过浏览器访问
- 使用frp通过自定义二级域名访问内网服务器
- Hive thrift服务(将Hive作为一个服务器,其他机器可以作为客户端进行访问)
- SQL Server 阻止了对组件“Ad Hoc Distributed Queries”的 STATEMENT“OpenRowset/OpenDatasource”的访问,因为此组件已作为此服务器安全配置的一部分而被关闭。系统管理员可以通过使用 sp_configure 启用“Ad Hoc Distributed Queries”。有关启用“Ad Hoc Distributed Queries”
- 分享:Android 客户端使用HttpGet访问服务器
- SQL Server 阻止了对组件 'Ole Automation Procedures' 的 过程'sys.sp_OACreate' 的访问,因为此组件已作为此服务器安全配置的一部分而被关闭。系统管理员可以通过使用 sp_configur
- 第一行代码总结:10网络:10.2使用HTTP协议访问网络10.2.1 使用HttpURLConnection10.2使用HTTP协议访问网络 工作原理: 客户端向服务器发出一条HTTP请求,服务器收
- WIN7作为SVN服务器,linux作为SVN客户端的使用注意
- SQL Server 阻止了对组件 'Ad Hoc Distributed Queries' 的 STATEMENT'OpenRowset/OpenDatasource' 的访问,因为此组件已作为此服务器安全配置的一部分而被关闭。系统管理员可以通过使用 s
- SQL Server 阻止了对组件 'Ad Hoc Distributed Queries' 的 STATEMENT 'OpenRowset/OpenDatasource' 的访问,因为此组件已作为此服务器安全配置的一部分而被关闭。系统管理员可以通过使用
- golang基础-浏览器访问服务器、客户端访问服务器(延迟处理)、表单回写并提交、panic处理
- 使用XML作为配置文件的方式完成模拟TOMCAT(XML,socket访问浏览器,DTD)
- Android作为服务器通过USB使用Socket协议向PC客户端发送文件
- SQL Server 阻止了对组件 'Ole Automation Procedures' 的 过程'sys.sp_OACreate' 的访问,因为此组件已作为此服务器安全配置的一部分而被关闭。系统管理员可以通过使用 sp_configure 启用 'Ol
- 黑马程序员 Java练习-自定义图形化界面模拟浏览器访问Tomcat服务器
- 浏览器分别在哪些情况下使用get方式和post方式访问web服务器
- SQL Server 阻止了对组件 'xp_cmdshell' 的 过程'sys.xp_cmdshell' 的访问,因为此组件已作为此服务器安全配置的一部分而被关闭。系统管理员可以通过使用 sp_co
- 客户端使用自定义代理类访问WCF服务
- Ubuntu下配置SVN服务器并在Win7下使用TortoiseSVN作为客户端
- 如何记录客户端浏览器第一次访问服务器的时间,并且在第二次访问服务器时再给客户端浏览器