Bonjour à tous,
J'essai de faire un serveur et un client en python mais voila j'ai une erreur que je ne comprends pas en fait la socket du serveur est en mode connecté seulement apres la connexion et l'envoie d'un message du client sur le serveur lorsque je veux lire le message j'obtiens le message d'erreur suivant :
Savez-vous quel est le probleme ? voila le code du serveur et du clientTraceback (most recent call last):
File "<pyshell#6>", line 1, in <module>
sock.recv(2
OSError: [WinError 10057] Une requête d’envoi ou de réception de données n’a pas été autorisée car le socket n’est pas connecté et (lors de l’envoi sur un socket datagramme en utilisant un appel sendto) aucune adresse n’a été fournie
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33 # -*- coding:latin_1 -*- from RC4 import * from wep import * import socket class AP: def __init__(self, ssid, key): self.key = key self.wep = WEP(self.key) self.host = ssid self.port = 12800 self.connexion_principale = socket.socket(socket.AF_INET, socket.SOCK_STREAM) self.connexion_principale.bind(("localhost", self.port)) self.connexion_principale.listen(5) print("le serveur est en attente de connexion") self.connexion_avec_client, self.infos_connexion = self.connexion_principale.accept() def setNewKey(self, newKey = None): if newKey is not None : self.key = newKey self.wep.newSettings(self.key) def sendMsg(self, msg): text = b'' text += msg sizeMsg = self.connexion_principale.send(self.wep.encrypt(text)) return sizeMsg def recvMsg(self, size): msg = self.connexion_principale.recv(size) return self.wep.decrypt(msg)merci d'avance
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26 # -*-coding: latin_1 -* from RC4 import * from wep import * import socket class client: def __init___(self, key): self.key = key self.wep = WEP(self.key) self.connexion_toServer = socket.socket(socket.AF_INET, socket.SOCK_STREAM) self.connexion_toServer.connect(('localhost', 12800)) def sendMsg(self, msg): text = b'' text += msg sizeMsg = self.connexion_toServer.send(self.wep.encrypt(text)) return sizeMsg def recvMsg(self, size): msg = self.connexion_toServer.recv(size) return self.wep.decrypt(msg) def setNewKey(self, newKey = None): if newKey is not None : self.key = newKey self.wep.newSettings(self.key)
Partager