Socket(服务器端)通信连接失败解决方法

1.问题描述
使用树莓派4B实现与PC端的Socket通信。树莓派作为服务器端,PC机作为客户端。在树莓派上运行服务器代码,相关端口打开,但PC端总连接不上。

2.解决方法
树莓派服务器端代码使用python实现,参考了俩本书籍《树莓派Python编程指南》和《树莓派Python编程入门与实战》。

Socket(服务器端)通信连接失败解决方法_第1张图片
按照上述代码运行总是连接不上,将comms_socket.bind((‘localhost’,50000))中的localhost改成客户端想要连接的地址 如“192.168.1.3”就可以了。做服务器端的话写成本机IP就可以。

3.原因
Localhost是本地服务器的地址,只能在本机上访问。所以当你使用Localhost作为地址的时候,可以在本机上运行俩个Socket程序,一个作为客户端,一个作为服务器端,程序是可以正常运行的。
而本机IP既能够通过本机访问有能够通过外部访问,所以在俩台不同的主机上运行的时候,需要将localhost改成本机IP。

你可能感兴趣的:(Android开发)