自己如何建设网站,蚌埠市建设局网站,专门做布料的网站,关键词优化报价推荐最近需要一个公网的TCP服务端平台来做4G模组的发包测验#xff0c;通讯猫(http://www.tongxinmao.com/App/Detail/id/1)貌似使用不了#xff0c;就干脆在自己的腾讯云上搭建了简单的TCP服务端。 我们搭建可以在服务器上使用Python、Java、C#等语言自行编写服务器程序。 目前是…最近需要一个公网的TCP服务端平台来做4G模组的发包测验通讯猫(http://www.tongxinmao.com/App/Detail/id/1)貌似使用不了就干脆在自己的腾讯云上搭建了简单的TCP服务端。 我们搭建可以在服务器上使用Python、Java、C#等语言自行编写服务器程序。 目前是使用python脚本实现的在linux上安装python环境后防火墙开放相应端口拷贝下面的程序运行起来即可下面代码是使用python2环境运行。客服端是在单片机上实现的代码服务端即运行下面的代码连接成功后客服端发送1024个字节‘a’到服务端服务端回复10个字节’a’到客服端。
#codingutf-8
import sys
reload(sys)
sys.setdefaultencoding(utf8)
from socket import *host
port 8013
numTotal 0
numError 0
send_string a * 10# 创建server socket
server_socket socket(AF_INET,SOCK_STREAM)# 绑定socket监听地址
server_addr (host,port)
server_socket.bind(server_addr)# 开始监听最大允许连接数5
server_socket.listen(5)# 处理连接请求
try:while True:print(waiting for connect...)#阻塞等待客户端的连接 client_socket, client_addr server_socket.accept()# 连接成功后打印客户端信息print(a client connnect from:, client_addr)while(True):# 向客户端发送数据# client_socket.send(Hello, client!.encode())client_socket.send(send_string)# 接收客户端的数据data client_socket.recv(1024)# 判断是否所有字符都是 aall_a all(char a for char in data)if all_a ! True or len(data) ! 1024:numError 1numTotal 1 #print(%r % all_a)print(%r % len(data))#print(recv data is , data.decode(gb2312))#print(recv data is 111, data.encode(gb2312))# 接收到quit则关闭socketif quit in data.decode():break# 关闭socketclient_socket.close()server_socket.close()print(socket closed.)break
except:print(numTotal is , numTotal-223)print(numError is , numError-223)client_socket.close()server_socket.close()print(socket closed.)搭建好服务端后可以在电脑上使用网络助手来验证功能是否正常
如果没有正常中断服务python程序再次运行可能会报以下错误 使用 lsof -i:8013 (相应端口号) 查询哪个占用再kill掉相应进程如果不管用就等待5-10分钟再操作或者重启服务器吧。
参考https://blog.51cto.com/u_13640625/3028086