feat: Semaine 9
This commit is contained in:
@@ -0,0 +1 @@
|
||||
3.12
|
||||
@@ -0,0 +1,14 @@
|
||||
import socket
|
||||
from env_var import SERVER_PORT, CLIENT_PORT
|
||||
|
||||
client = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
|
||||
client.bind(("localhost", CLIENT_PORT))
|
||||
client.connect(("localhost", SERVER_PORT))
|
||||
|
||||
print(f"✅ Client connecté au serveur sur port {SERVER_PORT} depuis le port {CLIENT_PORT}")
|
||||
client.send("Salut tout le monde !".encode())
|
||||
|
||||
reponse = client.recv(1024).decode()
|
||||
print(reponse)
|
||||
|
||||
client.close()
|
||||
@@ -0,0 +1,16 @@
|
||||
import socket
|
||||
from env_var import SERVER_PORT, CLIENT_PORT
|
||||
|
||||
client = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
|
||||
# client.bind(("localhost", CLIENT_PORT))
|
||||
# client.connect(("localhost", SERVER_PORT))
|
||||
|
||||
client.sendto(
|
||||
"Salut depuis UDP".encode(),
|
||||
("localhost", SERVER_PORT)
|
||||
)
|
||||
|
||||
data, server_address = client.recvfrom(1024)
|
||||
print(f"Réponse du serveur : {data.decode()}")
|
||||
|
||||
client.close()
|
||||
@@ -0,0 +1,2 @@
|
||||
SERVER_PORT = 9999
|
||||
CLIENT_PORT = 11111
|
||||
@@ -0,0 +1,7 @@
|
||||
[project]
|
||||
name = "socket-app"
|
||||
version = "0.1.0"
|
||||
description = "Add your description here"
|
||||
readme = "README.md"
|
||||
requires-python = ">=3.12"
|
||||
dependencies = []
|
||||
@@ -0,0 +1,19 @@
|
||||
import socket
|
||||
from env_var import SERVER_PORT
|
||||
|
||||
server = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
|
||||
server.bind(("localhost", SERVER_PORT))
|
||||
server.listen()
|
||||
|
||||
print(f"✅ Serveur en écoute sur le port {SERVER_PORT}")
|
||||
client_socket, client_address = server.accept()
|
||||
print(f"Connexion reçue de {client_address}")
|
||||
|
||||
message = client_socket.recv(1024) # nombre de bytes
|
||||
print(f"Message reçu : {message.decode()}")
|
||||
|
||||
reponse = "Bien reçu Bien reçu."
|
||||
client_socket.send(reponse.encode())
|
||||
|
||||
client_socket.close()
|
||||
server.close()
|
||||
@@ -0,0 +1,24 @@
|
||||
import socket
|
||||
from env_var import SERVER_PORT
|
||||
|
||||
server = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
|
||||
server.bind(("localhost", SERVER_PORT))
|
||||
# server.listen()
|
||||
|
||||
print(f"✅ Serveur en écoute sur le port {SERVER_PORT}")
|
||||
data, client_address = server.recvfrom(1024)
|
||||
print(f"Message reçu de {client_address} : {data.decode()}")
|
||||
|
||||
reponse = "Bien reçu Bien reçu."
|
||||
server.sendto("Message bien reçu.".encode(), client_address)
|
||||
server.close()
|
||||
|
||||
### Et si le message reçu a plus de bytes que le tampon ? On le découpe pardi !
|
||||
def receive_all(sock, buffer= 1024):
|
||||
data = b""
|
||||
while True:
|
||||
chunk = sock.recv(buffer)
|
||||
if not chunk:
|
||||
break
|
||||
data += chunk
|
||||
return data
|
||||
Generated
+8
@@ -0,0 +1,8 @@
|
||||
version = 1
|
||||
revision = 3
|
||||
requires-python = ">=3.12"
|
||||
|
||||
[[package]]
|
||||
name = "socket-app"
|
||||
version = "0.1.0"
|
||||
source = { virtual = "." }
|
||||
Reference in New Issue
Block a user