vendredi 18 septembre 2015

Java automatic HTTP headers on OutputStream

I have a simple Java TCP Server application that listens for connections and one a client connects it sends a string. If I run the server and make a GET request from a browser the string sent by the server is displayed. This is great, but, How did it work without HTTP Headers? Is the OutputStream class prepending HTTP Headers?

When I write the same code in C#, it doesnt work without Headers, the browsers doesnt display the sent string if there no HTTP headers prepended. The C# behavoir makes sense, so, whats happening with my java code?

Java code

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# code

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();



from Newest questions tagged java - Stack Overflow http://ift.tt/1MgkImO
via IFTTT

Aucun commentaire:

Enregistrer un commentaire