Python中文
首页
教程
问答
标签
搜索
登录
注册
Python服务器发送数据不工作
回答此问题可获得
20
贡献值,回答如果被采纳可获得
50
分。
<p>我目前正在使用Python开发一个服务器,我面临的问题是客户机无法从服务器检索发送的数据。在</p> <p>服务器的代码是:</p> <pre><code>import sys import socket from threading import Thread allClients=[] class Client(Thread): def __init__(self,clientSocket): Thread.__init__(self) self.sockfd = clientSocket #socket client self.name = "" self.nickName = "" def newClientConnect(self): allClients.<a href="https://www.cnpython.com/list/append" class="inner-link">append</a>(self.sockfd) while True: while True: try: rm= self.sockfd.recv(1024) print rm try: self.sockfd.sendall("\n Test text to check send.") print "Data send successfull" break except socket.error, e: print "Could not send data" break except ValueError: self.sockfd.send("\n Could not connect properly") def run(self): self.newClientConnect() self.sockfd.close() while True: buff = self.sockfd.recv(1024) if buff.strip() == 'quit': self.sockfd.close() break # Exit when break else: self.sendAll(buff) #Main if __name__ == "__main__": #Server Connection to socket: IP = '127.0.0.1' PORT = 80 serversocket = socket.socket(socket.AF_INET, socket.SOCK_STREAM) serversocket.setsockopt( socket.SOL_SOCKET, socket.SO_REUSEADDR,1) print ("Server Started") try: serversocket.bind(('',5000)) except ValueError,e: print e serversocket.listen(5) while True: (clientSocket, address) = serversocket.accept() print 'New connection from ', address ct = Client(clientSocket) ct.start() __all__ = ['allClients','Client'] #-- </code></pre> <p>客户端连接是:</p> ^{pr2}$ <p>需要快速解决。。。。 谢谢</p>
0 条评论
分类:
Python问答
请先
登录
后评论
默认排序
时间排序
1 个回答
匿名
1天前
擅长:python、mysql、java
<p>我测试了你的代码</p> <pre><code>rm= self.sockfd.recv(1024) print rm </code></pre> <p>效果很好。基本上,服务器会停在那里等待一条从未出现的消息。如果它仍然不适合你,可能有两个问题。要么你有防火墙以某种方式阻止了连接,要么你有旧服务器运行在后台,以前的尝试,实际上没有被杀死。检查您的流程,如果pythonw.exe或者等效物在不该运行的时候运行,然后杀死它。在</p>
请先
登录
后评论
针对此问题:
更多的回答
关注
89
关注
收藏
1
收藏,
216
浏览
网友 提问于 2天前
相关Python问题
无法使用Django/mongoengine连接到MongoDB(身份验证失败)
2 回答
无法使用Django\u mssql\u后端迁移到外部hos
10 回答
无法使用Django&Python3.4连接到MySql
1 回答
无法使用Django+nginx上载媒体文件
7 回答
无法使用Django1.6导入名称模式
9 回答
无法使用Django1.7和mongodb登录管理站点
3 回答
无法使用Djangoadmin创建项目,进程使用了错误的路径,因为我事先安装了错误的Python
1 回答
无法使用Djangockedi验证CBV中的字段
2 回答
无法使用Djangocketditor上载图像(错误400)
6 回答
无法使用Djangocron进行函数调用
3 回答
无法使用Djangofiler djang上载文件
1 回答
无法使用Djangokronos
1 回答
无法使用Djangomssql provid
7 回答
无法使用Djangomssql连接到带有Django 1.11的MS SQL Server 2016
7 回答
无法使用Djangomssq迁移Django数据库
1 回答
无法使用Djangonox创建用户
4 回答
无法使用Djangopyodb从Django查询SQL Server
5 回答
无法使用Djangopython3ldap连接到ldap
8 回答
无法使用Djangoredis连接到redis
9 回答
无法使用Django中的FK创建新表
2 回答