Python中文
首页
教程
问答
标签
搜索
登录
注册
在通过Oauth pinauth会话获取firebase数据时遇到问题
回答此问题可获得
20
贡献值,回答如果被采纳可获得
50
分。
<p>基本脚本:</p> <pre><code>from sanction import Client # client_id & client_secret are omitted but are valid client_pin = input('Enter PIN:') access_token_url = 'https://api.home.nest.com/oauth2/access_token' c = Client( token_endpoint=access_token_url, client_id=client_id, client_secret=client_secret) c.request_token(code = client_pin) </code></pre> <p><a href="https://stackoverflow.com/posts/26105065/revisions">[See edits for history]</a></p> <p>运行<code>c.request('/devices')</code>返回:</p> ^{pr2}$ <p>考虑到输出,我似乎需要输入一个通用的URL,所以我尝试了<code>c.request('wss://developer-api.nest.com')</code>:</p> <pre><code>Traceback (most recent call last): File "C:\py\nest_testing_sanction.py", line 36, in <module> data = c.request(query_url) File "C:\Python34\lib\site-packages\sanction-0.4.1-py3.4.egg\sanction\__init__.py", line 171, in request File "C:\Python34\lib\urllib\request.py", line 153, in urlopen return opener.open(url, data, timeout) File "C:\Python34\lib\urllib\request.py", line 455, in open response = self._open(req, data) File "C:\Python34\lib\urllib\request.py", line 478, in _open 'unknown_open', req) File "C:\Python34\lib\urllib\request.py", line 433, in _call_chain result = func(*args) File "C:\Python34\lib\urllib\request.py", line 1257, in unknown_open raise URLError('unknown url type: %s' % type) urllib.error.URLError: <urlopen error unknown url type: nonewss> </code></pre> <p>我还尝试了<code>https</code>,根据:</p> <p><a href="https://developer.nest.com/documentation/data-rate-limits" rel="nofollow noreferrer"><img src="https://i.stack.imgur.com/7Zduv.png" alt="enter image description here"/></a>-结果相同</p> <p>相比之下,这是有效的(对于火力基地.io虚拟设备):</p> <pre><code>firebase = firebase.FirebaseApplication('https://nesttest.firebaseio.com', None) thermostat_result = firebase.get('/devices', 'thermostats') </code></pre>
0 条评论
分类:
Python问答
请先
登录
后评论
默认排序
时间排序
1 个回答
匿名
1天前
擅长:python、mysql、java
<p>这更多的是一个评论,但系统还不允许我评论。在</p> <p>对于您关于将web pin放在何处的问题,只需将code=pin添加到request_token调用中。在</p> <pre><code>c.request_token(code = nest_client_pin) </code></pre> <p>这仍然不能完全解决问题,因为我只能使用一个引脚一次。我用过一次之后,以后的每一次呼叫都会像你描述的那样再次失败。还在研究这个。在</p>
请先
登录
后评论
针对此问题:
更多的回答
关注
89
关注
收藏
1
收藏,
216
浏览
网友 提问于 2天前
相关Python问题
无法使用Django/mongoengine连接到MongoDB(身份验证失败)
2 回答
无法使用Django\u mssql\u后端迁移到外部hos
4 回答
无法使用Django&Python3.4连接到MySql
6 回答
无法使用Django+nginx上载媒体文件
4 回答
无法使用Django1.6导入名称模式
10 回答
无法使用Django1.7和mongodb登录管理站点
7 回答
无法使用Djangoadmin创建项目,进程使用了错误的路径,因为我事先安装了错误的Python
8 回答
无法使用Djangockedi验证CBV中的字段
2 回答
无法使用Djangocketditor上载图像(错误400)
6 回答
无法使用Djangocron进行函数调用
9 回答
无法使用Djangofiler djang上载文件
6 回答
无法使用Djangokronos
2 回答
无法使用Djangomssql provid
7 回答
无法使用Djangomssql连接到带有Django 1.11的MS SQL Server 2016
6 回答
无法使用Djangomssq迁移Django数据库
10 回答
无法使用Djangonox创建用户
3 回答
无法使用Djangopyodb从Django查询SQL Server
7 回答
无法使用Djangopython3ldap连接到ldap
9 回答
无法使用Djangoredis连接到redis
1 回答
无法使用Django中的FK创建新表
6 回答