2014-10-02 140 views
0

我正在使用dashing.io仪表板,我想用python中的请求库发出一个post请求,把数据放在一个小部件中。daching仪表板的Api键

但它一直给我发回一个401错误和一个无效的API密钥。我不明白为什么,也没有真正明白auth_token和api密钥之间的区别。

这里是我的代码:

import json 
import requests 



dashboard_url = "http://localhost:3030" 
widget_id = 'my_widget_id' 
widget_url = dashboard_url + '/widgets/my_widget_id' 
data = {'name' : 'thomas','id' : 'bonjour','city' : 'cerfontaine'} 
data = json.dumps(data) 
headers ={'Content-Type':'application/json', 'Accept':'text/plain', 
      'Authorization':'XYZ'} 



try: 
    r = requests.post(widget_url, data, headers=headers) 
    print r.status_code 
    print r.json() 
    print r.text 
except: 
    r = requests.post(widget_url, data, headers=headers) 
    print 'Dashing update failed' 
    print r.text 

我在config.ru代码的auth_token是XYZ了。 你们能帮我吗?

+0

你没有发出正确的API密钥 – 2014-10-02 15:11:02

回答

2

您需要在您的有效载荷的关键,而不是头

data = { 
    'name'  : 'thomas', 
    'id'   : 'bonjour', 
    'city'  : 'cerfontaine', 
    'auth_token' : YOUR_AUTH_TOKEN_HERE 
} 

见我的Django的例子here