【发布时间】:2015-03-03 20:12:35
【问题描述】:
我正在尝试调用 SugarCRM v10 api 以获取报告的输出,而无需登录 Web 界面并单击导出按钮。我想将此报告作为可以使用 python 和 requests 库写入 csv 格式的数据。
我可以成功验证并获得一个令牌,但无论我尝试什么,我从报告中得到的所有响应都是错误方法不存在,这意味着您不能在此代码中的第二个 url 末尾使用 /csv块。
url = "https://mydomain.sugarondemand.com/rest/v10/oauth2/token"
payload = {"grant_type":"password","username":"ursername","password":"password","client_id":"sugar", "platform":"myspecialapp"}
r = requests.post(url, data=json.dumps(payload))
response = json.loads(r.text)
token = response[u'access_token']
print 'Success! OAuth token is ' + token
#What export methods are available? ###################################
#WRONG url = "https://mydomain.sugarondemand.com/rest/v10/Reports/report_id/csv"
#Following paquino's suggestion I used Base64
url = "https://mydomain.sugarondemand.com/rest/v10/Reports/report_id/Base64"
headers = { "Content-Type" : "application/json", "OAuth-Token": token }
r = requests.get(url, headers=headers);
response = r.text.decode('base64')
print response`
我的问题是:通过对 SugarCRM api v10 的 api 调用可以使用哪些导出方法。
编辑:在请求 url 中使用 Base64 不幸返回我不知道如何解析的 ab 对象...
%PDF-1.7
3 0 obj
<</Type /Page
/Parent 1 0 R
/MediaBox [0 0 792.00 612.00]
/Resources 2 0 R
/Contents 4 0 R>>
endobj
4 0 obj
<</Length 37217>>
stream
8.cܬR≈`ä║dàQöWºáW╙µ
【问题讨论】:
-
paquino 的回复很有帮助...
-
是否有与 Sugarcrm v10 rest api 交互的 Python 库?