Buona sera a tutti,
scrivo per ottenere sostegno nell'utilizzo di una libreria preinstallata di python chiamata socket. Io, nell'utilizzarla, non ho incontrato nessun particolare problema, l'unica cosa è che non sono riuscito a fare ciò che volevo.
In questo caso volevo creare una chat locale con python3 e questo è il mio codice:
FILE SERVER
# server.py
import socket
s = socket.socket()
host = socket.gethostname()
print("Server will start on host: " + host)
port = 8080
s.bind((host, port))
print("\nServer done binding to host and port successfully.")
print("Server is waiting for incoming connections...\n")
s.listen(1)
conn, address = s.accept()
print(address, " Has connected to the server and is now online ...")
print("")
while True:
message = input(">> ").encode()
conn.send(message)
incoming_message = conn.recv(1024).decode()
print(f" Client : {incoming_message}")
FILE CLIENT
# client.py
import socket
s = socket.socket()
host = input(str("Please enter the hostname of the server: "))
port = 8080
try:
s.connect((host, port))
print("Connected to the chat server.")
except:
print("The server you specified is unreachable.")
while True:
incoming_message = s.recv(1024)
incoming_message = incoming_message.decode()
print(f" Server: {incoming_message}")
message = input(">> ").encode()
s.send(message)
finchè apro due "istanze" del mio programma sul mio pc tutto va ma se provo a connettermi al server in eseguzione sul mio con un altro PC connesso alla stessa rete mi da errori. Dice sul pc in client "The server you specified is unreachable."
La mia intenzione non è quella di renderlo online al mondo ma solo a quelli connessi ad una stessa rete.
Idee?