我自己写了一个服务器端的程序,用浏览器作客户端,但是浏览器总是接收不到服务器发过来的消息,代码如下,哪位大神解释一下,谢了。
while(true){
InputStream file = socket.getInputStream();
byte[] byt = new byte[1024];
int len = file.read(byt);
String str = new String(byt,0,len);
System.out.println(str);
OutputStream ous = socket.getOutputStream();
PrintWriter pr = new PrintWriter(ous,true);
pr.print("nihao");
}
(我想知道是不是浏览器的问题,因为我自己写的java客户端是可以互相通信的)
http://blog.csdn.net/ghost_programmer/article/details/43446531
用的方法不对吧,使用Writer向客户端写入消息:
PrintWriter writer = response.getWriter();
writer.write("中国");
第一、浏览器和服务器是基于HTTP协议的,你必须按照HTTP协议的格式给浏览器发送响应。
第二、你的输出流要 flush() 和close()。