首页 新闻 会员 周边 捐助

pyhothon中self.wfile.write(self.rfile.readline())这样写为什么不能将数据发送出去

1
悬赏园豆:5 [已解决问题] 解决于 2017-10-17 11:25

我采用的是pyhont3.6,服务端代码如下:

1    #!/usr/bin/env python

2     from socketserver import (TCPServer as TCP,StreamRequestHandler as SRH)

3     from time import ctime

4     HOST = ''

5     PORT = 21567

6     ADDR = (HOST,PORT)

7    class MyRequestHandler(SRH)

8             def handler(self):

9                  print("data:",self.rfile.readline().decode())

10                  self.wfile.write(self.rfile.readline())

11   Serv = TCP(ADDR,MyRequestHandler)

12   print("waiting for connection.....")

13   tcpServ.serve_forever()

 

这个服务端代码跑起来后,客户端向服务器发送数据,9行打印出了发送的数据,但是第10行发送的数据客户端没有接收到,这是什么原因??

功勋的主页 功勋 | 初学一级 | 园豆:192
提问于:2017-10-13 00:49
< >
分享
最佳答案
4

flush()

收获园豆:5
长蘑菇星人 | 小虾三级 |园豆:1832 | 2017-10-13 13:54

谢谢!!!!!!!!!!!!!!!!

功勋 | 园豆:192 (初学一级) | 2017-10-13 20:58
其他回答(1)
0

你的问题解决了吗?

我之前测试也遇到过类似的问题,后来发现的self.wfile.write(buf)。里面的数据没有编码。

后来加上编码,self.wfile.write(buf.encode('utf-8'))。这样就解决了。

不知道跟你的问题是不是一样的。

xcywt | 园豆:202 (菜鸟二级) | 2018-04-16 16:59
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册