package web;import java.io.IOException;
import java.io.InputStream;
import java.io.PrintWriter;
import java.net.ServerSocket;
import java.net.Socket;public class WebSer { public static void main(String[] args) throws IOException {
// TODO 自动生成的方法存根

while (true) {
ServerSocket ss = new ServerSocket(9090);

Socket s = ss.accept();
System.out.println(s.getInetAddress().getHostAddress());
InputStream in = s.getInputStream(); byte[] buf = new byte[1024];
int len = in.read(buf); System.out.println(new String(buf, 0, len));
PrintWriter out = new PrintWriter(s.getOutputStream(), true);
out.println("<font color='green' size='7'>zhuce</font>"); s.close();
ss.close(); }
}}

解决方案 »

  1.   

    都没看到你向客户端发送的outputstream ,你不过直接在服务器端的屏幕上输出而已。
      

  2.   

    你这写的是一个tcp服务端,不是http服务端,用控制台可以得到结果啊
    telnet localhost 9090
    Trying ::1...
    Connected to localhost.
    Escape character is '^]'.
    aa
    <font color='green' size='7'>zhuce</font>
    Connection closed by foreign host.
    为什么要用html获取
      

  3.   

    都没看到你向客户端发送的outputstream ,你不过直接在服务器端的屏幕上输出而已。s.getoutputStream 不是获取到了吗 
      

  4.   

    因为我写了个网页 想访问这个服务端 然后服务端接受到请求 回返一个数据 就是一个字符串。  然后我服务器能获取到html的请求信息 并打印到了控制台。但是html网页没有收到返回的数据
      

  5.   


    你服务器只是get outputstream,这是在接受客户端发送的信息 ,但是没有看到发送给客户端 ,服务器端发送信息同样需要
    outputstream.write给客户端,不然客户端去哪里接受信息呢?你要相互之间通话,肯定input,output各一对。
      

  6.   

    都没看到你向客户端发送的outputstream ,你不过直接在服务器端的屏幕上输出而已。s.getoutputStream 不是获取到了吗 肯能是你没有flush,数据还在缓存中没有发送,你试试看在out.println("<font color='green' size='7'>zhuce</font>");
    后面添加out.flush();
      

  7.   

    都没看到你向客户端发送的outputstream ,你不过直接在服务器端的屏幕上输出而已。s.getoutputStream 不是获取到了吗 肯能是你没有flush,数据还在缓存中没有发送,你试试看在out.println("<font color='green' size='7'>zhuce</font>");
    后面添加out.flush();ture会自动刷的。
      

  8.   


    你服务器只是get outputstream,这是在接受客户端发送的信息 ,但是没有看到发送给客户端 ,服务器端发送信息同样需要
    outputstream.write给客户端,不然客户端去哪里接受信息呢?你要相互之间通话,肯定input,output各一对。不不不。不是这个问题。我写的客户端访问它可以接受到服务端返回的数据。但用网页访问就收不到服务端返回的数据
      

  9.   


    你可以试试用outputstream直接写给客户端方法OutputStream out = socket.getOutputStream();  
            out.write(data); 
      

  10.   


    你可以试试用outputstream直接写给客户端方法OutputStream out = socket.getOutputStream();  
            out.write(data); 好的 我等会试试。等下看结果
      

  11.   


    那就不是你这段程序的问题,你要分析接受程序。接受的就是用html写的一个表单提交网页
      

  12.   


    那就不是你这段程序的问题,你要分析接受程序。接受的就是用html写的一个表单提交网页html用的是http协议,socket用的tcp协议,你应该没法直接取出数据,起码表头不同,需要转换。
      

  13.   


    那就不是你这段程序的问题,你要分析接受程序。接受的就是用html写的一个表单提交网页html用的是http协议,socket用的tcp协议,你应该没法直接取出数据,起码表头不同,需要转换。使用什么方法转换