From 6723e01b20c0950ed8b00be49a6481e7e1543309 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Simon=20Gon=C3=A7alves=20Costa?= <20251144030032@ifrn.local> Date: Fri, 10 Apr 2026 21:00:24 -0300 Subject: [PATCH] Primeira aula de sockets --- sockets/cliente_tcp.py | 15 +++++++++++++++ sockets/servidor_tcp.py | 22 ++++++++++++++++++++++ 2 files changed, 37 insertions(+) create mode 100644 sockets/cliente_tcp.py create mode 100644 sockets/servidor_tcp.py diff --git a/sockets/cliente_tcp.py b/sockets/cliente_tcp.py new file mode 100644 index 0000000..f7cdced --- /dev/null +++ b/sockets/cliente_tcp.py @@ -0,0 +1,15 @@ +#Modelo diferente de importação, não precisa utilizar a palavra socket (módulo) antes dos recursos +from socket import * + +#Criar objeto socket +cliente = socket(AF_INET,SOCK_STREAM) + +#Abrir conexão +conexao = cliente.connect(("127.0.0.1",3000)) + +#Enviar mensagem +cliente.send("Olá, servidor!".encode()) + +# +mensagem = cliente.recv(1024) +print(f"MEnsagem recebida {mensagem.decode()}") \ No newline at end of file diff --git a/sockets/servidor_tcp.py b/sockets/servidor_tcp.py new file mode 100644 index 0000000..0ea734b --- /dev/null +++ b/sockets/servidor_tcp.py @@ -0,0 +1,22 @@ +#Biblioteca padrão para utilização de sockets +import socket + +#Criar um objeto socket com AF_INET (IPV4) e SOCK_STREAM (TCP) +servidor = socket.socket(socket.AF_INET, socket.SOCK_STREAM) + +#Estabelecer vinculo com endereço e uma porta +servidor.bind(("127.0.0.1",3000)) + +#Começa a ouvir tentativas de conexão +servidor.listen() + +#Aceitar a conexão, recebendo o objeto socket da conexão e o endereço de quem se conectou +conexao, endereco = servidor.accept() + +#Recebendo mensagem do cliente. Tenho que converter bytes para string +mensagem = conexao.recv(1024).decode() +print(f"mensagem recebida: {mensagem}") + +#Enviar mensagem. Precisa ser em bytes (decode) +conexao.send("Ok, mensagem recebida com sucesso!".encode( )) +