如何通过请求而不是httplib建立与Parse的连接

时间:2014-06-24 13:27:54

标签: python python-2.7 parse-platform python-requests

我尝试连接到我在Parse Cloud Code设置的自定义端点。在文档中,他们展示了如何建立连接:

import json,httplib
connection = httplib.HTTPSConnection('api.parse.com', 443)
connection.connect()
connection.request('POST', '/1/functions/userData', json.dumps({
        "userID": "1234"
     }), {
       "X-Parse-Application-Id": "####",
       "X-Parse-REST-API-Key": "####",
       "Content-Type": "application/json"
     })
result = json.loads(connection.getresponse().read())
print result

这项工作很棒。

我试图用requests写它,但我不断得到404:

import json, requests

PARSE_HOSTNAME = 'https://api.parse.com:443'
PARSE_APP_ID = '####'
PARSE_REST_API_KEY = '####'


endpoint = '/1/function/userData/'
headers = {"X-Parse-Application-Id": PARSE_APP_ID, 
           "X-Parse-REST-API-Key": "PARSE_REST_API_KEY", 
           "Content-Type": "application/json"}
payload = {'userID': '1234'}

r = requests.post(PARSE_HOSTNAME + endpoint, data=json.dumps(payload), headers=headers)

print r.json

打印出来:

<bound method Response.json of <Response [404]>>

我觉得我错过了一些非常明显的东西。抱歉无知。 我如何完成与第一个相同的结果,但有请求?

1 个答案:

答案 0 :(得分:4)

第二个示例中的URL拼写错误。

/1/function/userData/

必须是

/1/functions/userData