Python 谷歌云物联网核心演习
我正在研究Google Cloud IoT core,在那里,我在在线文档中提供的一个示例(端到端示例)中遇到了一个问题: 服务器和设备有两个脚本,在运行设备脚本时,我遇到了以下问题:Python 谷歌云物联网核心演习,python,google-cloud-platform,google-cloud-iot,Python,Google Cloud Platform,Google Cloud Iot,我正在研究Google Cloud IoT core,在那里,我在在线文档中提供的一个示例(端到端示例)中遇到了一个问题: 服务器和设备有两个脚本,在运行设备脚本时,我遇到了以下问题: 您的防火墙(如Cloud Shell机器)可能阻止Python通过端口8883进行连接。您能否尝试在端口设置为443的情况下调用cloudiot\u pubsub\u example\u mqtt\u device.py脚本,例如: python <your_existing_parameters>
您的防火墙(如Cloud Shell机器)可能阻止Python通过端口8883进行连接。您能否尝试在端口设置为443的情况下调用
cloudiot\u pubsub\u example\u mqtt\u device.py
脚本,例如:
python <your_existing_parameters> --mqtt_bridge_port=443
更新您还可以尝试将虚拟环境中的Python版本设置为Python 2,方法是将虚拟环境设置为:
virtualenv env --python=python2
回溯(最近一次呼叫最后一次):
文件“cloudiot_pubsub_example_mqtt_device.py”,第249行,在
main()
文件“cloudiot_pubsub_example_mqtt_device.py”,第213行,主目录
client.connect(args.mqtt_桥_主机名,args.mqtt_桥_端口)
文件“/usr/local/lib/python2.7/dist-packages/paho/mqtt/client.py”,第行
768,接通
返回self.reconnect()
文件“/usr/local/lib/python2.7/dist-packages/paho/mqtt/client.py”,第行
927,在重新连接中
sock.do_握手
文件“/usr/lib/python2.7/ssl.py”,第788行,在do_握手中
赛尔夫:握手
ssl.SSLError:[ssl:CERTIFICATE\u VERIFY\u FAILED]证书验证失败
(_.c:581)
从命令行参数看,您似乎正在传入rsa_cert.pem,这是您的SSL私钥。正如@class所说,您需要为Google根证书(wget)设置wget,然后为--ca_certs参数传递下载的root.pem路径。这些脚本的代码是:-请为您的帖子本身和标题添加一些详细信息。这不是一个聊天室,而是一个解决问题的库。应仔细编辑问题,以便不仅能够提供解决方案的问题,而且能够在不同上下文中发现类似问题的问题。在端口443,ssl证书验证失败
virtualenv env --python=python2
Traceback (most recent call last):
File "cloudiot_pubsub_example_mqtt_device.py", line 249, in <module>
main()
File "cloudiot_pubsub_example_mqtt_device.py", line 213, in main
client.connect(args.mqtt_bridge_hostname, args.mqtt_bridge_port)
File "/usr/local/lib/python2.7/dist-packages/paho/mqtt/client.py", line
768, in connect
return self.reconnect()
File "/usr/local/lib/python2.7/dist-packages/paho/mqtt/client.py", line
927, in reconnect
sock.do_handshake()
File "/usr/lib/python2.7/ssl.py", line 788, in do_handshake
self._sslobj.do_handshake()
ssl.SSLError: [SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed
(_ssl.c:581)