【发布时间】:2014-08-18 01:50:35
【问题描述】:
我正面临一些问题,因为我正在努力通过 wifi 扩展一个简单的聊天程序。 我将在不同系统上运行的两个程序命名为客户端和服务器,认为它们不执行它们的典型功能。 服务器程序正确显示客户端发送的消息,但是一旦服务器发送消息,客户端程序就没有收到它。我检查了IP,一切都很好。客户端和服务器代码也相似,唯一的区别在于谁先发送消息(根据我的程序是客户端)。 我需要尽快帮助。 提前致谢。
这是我的客户程序
from socket import *
import sys
import time
TO_ADDR=('192.168.1.101',8135)
hostname=gethostbyname('0.0.0.0')
LOCAL_ADDR=(hostname,8138)
MSG_LEN=1000
fd=socket(AF_INET, SOCK_DGRAM)
fd.bind(LOCAL_ADDR)
s=('',)
msg=''
def recv():
s=fd.recvfrom(MSG_LEN)
print '\n',s[0]
print '\n'
return s[0]
def send(msg):
fd.connect(('192.168.1.101',8135))
fd.sendto(msg,TO_ADDR)
while msg!='stop' or s!='stop':
print '\n'
msg=raw_input('Enter your message:')
send(msg)
s=recv()
print '\n',s[0]
这是我的服务器程序
from socket import *
s=('',)
msg=''
TO_ADDR=('198.168.1.103',8138)
hostname=gethostbyname('0.0.0.0')
LOCAL_ADDR=(hostname,8135)
MSG_LEN=1000
fd=socket(AF_INET,SOCK_DGRAM)
fd.bind(LOCAL_ADDR)
def recv():
s=fd.recvfrom(MSG_LEN)
print '\n',s[0]
print '\n'
return s[0]
def send(msg):
fd.connect(('198.168.1.103',8138))
fd.sendto(msg,TO_ADDR)
fd.close()
while s[0]!='stop' or msg!='stop':
s=recv()
msg=raw_input('Enter your message:')
send(msg)
【问题讨论】:
标签: python sockets networking wifi send