这篇文章主要介绍了树莓派与云服务器如何进行socket通信,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。
首先约定好socket通信的端口号:7000
通过服务器控制台打开对应端口
注意:端口必须要在控制台打开,在服务器里打开端口无效!!
服务器端:
ip地址要写为服务器的内网ip
收到的数据是byte数组,所以要用decode解码,也可以指定字符集解码,默认是utf-8
import socket
HOST = '服务器的内网ip'
PORT = 7000
s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
#绑定socket
s.bind((HOST, PORT))
#开始监听
s.listen(1)
print('Listening at port:',PORT)
conn, addr = s.accept()
print('Connected by', addr)
while True:
data = conn.recv(1024)
data = data.decode()
if not data:
break
print('Received message:', data)
conn.close()
s.close()
树莓派端:
注意ip地址写服务器公网ip
import socket
HOST = '服务器公网ip'
PORT = 7000
BUFSIZ =1024
ADDR = (HOST,PORT)
tcpCliSock = socket(AF_INET,SOCK_STREAM)
tcpCliSock.connect(ADDR)
while True:
data1 = input('>')
#data = str(data)
if not data1:
break
tcpCliSock.send(data1.encode())
data1 = tcpCliSock.recv(BUFSIZ)
if not data1:
break
print(data1.decode('utf-8'))
tcpCliSock.close()
感谢你能够认真阅读完这篇文章,希望小编分享的“树莓派与云服务器如何进行socket通信”这篇文章对大家有帮助,同时也希望大家多多支持天达云,关注天达云行业资讯频道,更多相关知识等着你来学习!