首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >OutputStream上的

OutputStream上的
EN

Stack Overflow用户
提问于 2015-09-18 09:36:28
回答 1查看 738关注 0票数 1

我有一个简单的Java应用程序,它侦听连接,一个客户端连接它发送一个字符串。如果运行服务器并从浏览器发出GET请求,则显示服务器发送的字符串。这很好,但是,如果没有HTTP头,它是如何工作的呢?OutputStream类是否先于Headers?

当我用C#编写相同的代码时,如果没有头文件,它就不能工作,如果没有Headers,浏览器就不会显示发送的字符串。C#的行为是有意义的,那么,我的java代码会发生什么呢?

Java代码

代码语言:javascript
复制
ServerSocket server = new ServerSocket(8080);
            System.out.println("Servidor iniciado.\naguardando a conexao de um cliente...");
            Socket clientSocket = server.accept();
            System.out.println("Um cliente conectou-se ao nosso servidor Socket TCP");



            OutputStream streamSaida = null;
            //Obter a referencia do stream de saida do cliente conectado.
            streamSaida = clientSocket.getOutputStream();

            String bemVindo = "Bem vindo ao nosso primeiro servidor";
            streamSaida.write(bemVindo.getBytes());

            System.out.println("Desligando o servidor");
            clientSocket.close();
            server.close();

C#代码

代码语言:javascript
复制
System.Net.Sockets.TcpListener server = new System.Net.Sockets.TcpListener(System.Net.IPAddress.Loopback, 8080);
            server.Start();
            Console.WriteLine("Servidor TCP iniciado");
            Console.WriteLine("Aguardando conexao de um cliente...");
            Socket client = server.AcceptSocket();

            Console.WriteLine("Um cliente conectou-se ao servidor");

            String msg = "Bem-vindo ao nosso servidor TCP C#"; //Mensagem de boas vindas

            NetworkStream streamCliente = new NetworkStream(client);
            System.IO.StreamWriter writer = new System.IO.StreamWriter(streamCliente);
            writer.Write(msg);
            writer.Flush();
EN

回答 1

Stack Overflow用户

发布于 2015-09-18 09:55:15

Java不会在使用普通文档时添加任何标题,大多数浏览器都会将发送给它们的数据显示为字符串,如果它们不是其他文档的话。也许您没有关闭C#版本中的连接,所以broswer不知道什么时候完成数据的传输,并且在解释数据之前等待连接的关闭(在您的例子中显示它)。尝试在程序结束时添加呼叫以关闭连接,例如。client.Close();

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/32648708

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档