|
马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
本帖最后由 WwBin 于 2020-3-22 21:23 编辑
求助,我在服务器端放了一个socket服务端代码,想在本地进行连接并且在本地连接断开后服务端能够继续等待下一位用户连接,连接是没问题的,但载我本地服务断开后,服务端也报错断开了
- import socket
- import os.path
- # 创建套接字
- sockfd = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
- # 绑定地址
- sockfd.bind(('0.0.0.0', 6666))
- # 设置监听
- sockfd.listen(5)
- while True:
- print("Waiting for connect...")
- try:
- # 等待客户端链接
- connfd, addr = sockfd.accept()
- print("Connect from: %s", addr)
- except KeyboardInterrupt:
- print("退出服务")
- break
- while True:
- # 收发信息
- connfd.recv(10)
- if os.path.isfile("/www/wwwroot/weather/welcome.txt"):
- n = connfd.send(b'open')
- else:
- n = connfd.send(b'no')
- # 关闭套接字
- connfd.close()
- sockfd.close()
复制代码
这是服务端的代码
- from socket import *
- from time import sleep
- sockfd = socket()
- server_addr = ('xxx.xxx.xxx.xxx', 6666)
- sockfd.connect(server_addr)
- while True:
- message = "wait"
- if not message:
- break
- sleep(2)
- sockfd.send(message.encode())
- data = sockfd.recv(1024)
- data02 = str(data, 'utf-8')
- print(data02)
- if data02 == "open":
- print(1)
- sleep(10)
- sockfd.close()
复制代码
这是客户端代码
- Traceback (most recent call last):
- File "01.py", line 23, in <module>
- connfd.recv(10)
- ConnectionResetError: [Errno 104] Connection reset by peer
复制代码
这是客户端退出后服务端的报错 |
|