【问题标题】:Firebase - SSL error trying to post URLFirebase - 尝试发布 URL 的 SSL 错误
【发布时间】:2018-04-08 04:43:00
【问题描述】:

我正在尝试向 firebase 发出 post 请求,但我遇到了以前使用 相同代码 未发生的错误。我的互联网连接是通过我的嵌入式 linux (Ubuntu 16.04) 设备 (Orange Pi 2g IoT) 上的 2G-Modem 进行的,到目前为止,我通过在其上运行 Python 2.7 脚本并发布 URL 没有任何问题。但是现在突然我在执行代码时开始遇到以下错误:

root@OrangePi:~# [ 5218.307887] rc.local[395]: Traceback (most recent call last):
[ 5218.308805] rc.local[395]:   File "/root/TEST/Timekeeper.py", line 38, in <module>
[ 5218.309607] rc.local[395]:     send_event = firebase.post('/device', new_event)
[ 5218.310542] rc.local[395]:   File "/usr/local/lib/python2.7/dist-packages/firebase/decorators.
[ 5218.311748] rc.local[395]:     return f(*args, **kwargs)
[ 5218.312254] rc.local[395]:   File "/usr/local/lib/python2.7/dist-packages/firebase/firebase.py
[ 5218.314531] rc.local[395]:     connection=connection)
[ 5218.315074] rc.local[395]:   File "/usr/local/lib/python2.7/dist-packages/firebase/decorators.
[ 5218.315506] rc.local[395]:     return f(*args, **kwargs)
[ 5218.315895] rc.local[395]:   File "/usr/local/lib/python2.7/dist-packages/firebase/firebase.py
[ 5218.317208] rc.local[395]:     timeout=timeout)
[ 5218.317692] rc.local[395]:   File "/usr/local/lib/python2.7/dist-packages/requests-2.18.4-py2.
[ 5218.320210] rc.local[395]:     return self.request('POST', url, data=data, json=json, **kwargs
[ 5218.320780] rc.local[395]:   File "/usr/local/lib/python2.7/dist-packages/requests-2.18.4-py2.
[ 5218.321206] rc.local[395]:     resp = self.send(prep, **send_kwargs)
[ 5218.322444] rc.local[395]:   File "/usr/local/lib/python2.7/dist-packages/requests-2.18.4-py2.
[ 5218.324416] rc.local[395]:     r = adapter.send(request, **kwargs)
[ 5218.325043] rc.local[395]:   File "/usr/local/lib/python2.7/dist-packages/requests-2.18.4-py2.
[ 5218.325572] rc.local[395]:     raise SSLError(e, request=request)
[ 5218.325990] rc.local[395]: requests.exceptions.SSLError: HTTPSConnectionPool(host='hermes-4dc8ror(1, u'[SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed (_ssl.c:590)'),)

产生此错误的部分代码如下:

from firebase import firebase

firebase_url = 'https://hermes-4dc8c.firebaseio.com/'
firebase = firebase.FirebaseApplication(firebase_url, None)

new_event = {

     "eventType": "Sirene"


  }

send_event = firebase.post('/device', new_event)

这个名为 Orange Pi 2g IoT 的嵌入式设备有自己的调制解调器 2G 可以连接到互联网,但我不确定这东西有什么样的认证,因为它是 10 美元,Firebase 是否有可能因为未知而阻止了我的设备还是奇怪的连接起源?有没有人在此之前遇到过这个问题或者可以帮助我解决这个问题?

谢谢各位!!

【问题讨论】:

    标签: python ssl firebase-realtime-database ubuntu-16.04


    【解决方案1】:

    发生这种情况是因为您的互联网速度或 Firebase 的网络连接不足。发生这种情况时,请检查 Firebase 的 status。更多解释here.

    【讨论】:

      【解决方案2】:

      这可能是由于设备上的时间不匹配造成的问题。尝试使用以下命令更正设备上的时间。

      sudo date -s "Fri Nov 26 11:19:00 UTC 2021"
      

      【讨论】:

        猜你喜欢
        • 2020-10-30
        • 1970-01-01
        • 2020-07-21
        • 1970-01-01
        • 2020-07-09
        • 2019-12-26
        • 2020-05-30
        • 2020-03-20
        • 2016-12-13
        相关资源
        最近更新 更多