Raspberry PI Client/Serveur de Socket en Python

Je suis en train de mettre en place un Python prise entre mon Raspberry Pi (course Raspbian) et mon Macbook Pro (exécution de Mavericks).

Les deux appareils sont connectés au même réseau WiFi dans mon appt. Je lance le serveur de code sur mon RPi, et puis le code du client sur mon Macbook (j'ai aussi essayé l'inverse). Je pense que je vais rater une étape, car le code je suis à l'aide que j'ai trouvé sur plusieurs sites, je suppose qu'il fonctionne. J'ai aussi vérifié que mon Macbook a pare-feu est désactivé.

Code Serveur:

from socket import *

host = "127.0.0.1"

print host

port = 7777

s = socket(AF_INET, SOCK_STREAM)

print "Socket Made"

s.bind((host,port))

print "Socket Bound"

s.listen(5)

print "Listening for connections..."

q,addr = s.accept()

data = raw_input("Enter data to be sent: ")

q.send(data)  

Code Client:

from socket import *

host = "127.0.0.1"

print host

port=4446

s=socket(AF_INET, SOCK_STREAM)

print "socket made"

s.connect((host,port))

print "socket connected!!!"

msg=s.recv(1024)

print "Message from server : " + msg

J'obtiens l'erreur:

Traceback (most recent call last):
  File "TCPclient.py", line 9, in <module>
    s.connect((host,port))         
  File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/socket.py",

ligne de 224, de méthamphétamine
retour getattr(self._sock,nom)(*args)
socket.erreur: [Errno 61] Connexion refusée

Mon processus pour l'exécution du code est:

  • type "python TCPserver.py" en RPi terminal
  • type "python TCPclient.py en Macbook terminal

Puis je recevoir le message d'erreur sur mon Macbook, pas d'erreur sur le RPi

Mes questions sont:

  1. Est 127.0.0.1 l'entrée appropriée pour "hôte"? (veuillez noter que j'ai aussi essayé "localhost")
  2. L'entrée de l'hôte doivent être de même pour le code client et serveur?
  3. Si le RPi et Macbook tous deux être connectés au même réseau wi-fi?
  4. Est-il mis en place qui doit être fait soit sur le RPi ou mon Macbook pour que cela fonctionne (notez mon RPi Modèle B, de nouvelles, et je n'ai pas configurer autre chose sur lui avant ce)
  5. Savez-vous pourquoi je reçois cette erreur et comment la corriger?

Votre aide est grandement appréciée!!

Je vais essayer 0.0.0.0 comme valeur de l'hôte. Laissez-moi savoir ce qu'il se passe. Aussi, le code exécuté dans le mac est assez long, ou vous n'avez pas fermé la chaîne?

OriginalL'auteur user3476808 | 2014-03-29