Programação de soquete do servidor python do cliente Java
Eu tenho um programa cliente em java que envia uma mensagem "Olá" para o servidor python.
Código Java
import java.io.*;
import java.net.*;
public class MyClient {
public static void main(String[] args) {
try{
Socket soc=new Socket("localhost",2004);
DataOutputStream dout=new DataOutputStream(soc.getOutputStream());
dout.writeUTF("Hello");
dout.flush();
dout.close();
soc.close();
}catch(Exception e){
e.printStackTrace();}
}
Código do servidor Python
import socket # Import socket module
soc = socket.socket() # Create a socket object
host = "localhost" # Get local machine name
port = 2004 # Reserve a port for your service.
soc.bind((host, port)) # Bind to the port
soc.listen(5) # Now wait for client connection.
while True:
conn, addr = soc.accept() # Establish connection with client.
print ("Got connection from",addr)
msg = conn.recv(1024)
print (msg)
if ( msg == "Hello Server" ):
print("Hii everyone")
else:
print("Go away")
o problema é que o cliente java é capaz de enviar uma mensagem Hello para o servidor python, mas, no lado python, a instrução else sempre é executada com a saída "Go away".python version 2.7
Resultado:
('Got connection from', ('127.0.0.1', 25214))
Hello
Go away