[英]Issue with post request using requests Python lib and dict of dicts
我是Python的新手,我需要構建一個Python庫,該庫連接到我們的API服務,發送一些json數據,一切正常,但有一件事情,我需要發送一些dict來執行POST請求:
def create_project(self, project):
print project
params = simplejson.dumps(project)
print params
req = requests.post(self.url+'/projects/addSpeedy.json',
data=params,
auth=HTTPBasicAuth(self.api_id, self.api_key),verify=False)
data = simplejson.loads(req.text)
return data
我傳遞給該函數的項目參數包含以下結構:
script = {
'part001': 'HI',
'part002': 'WORLD'
}
project = {
'title': 'Project posted from Python Carrot',
'script': script,
'remarks': "I want the voice be similar to Bugs Bunny.",
'test': '1'
}
但是,當執行請求時,API會告訴我缺少必填的“ title”字段,但是當在函數中打印數據時,一切似乎都很好,在這種情況下,我在請求站點中看到了dict json編碼: http: //docs.python-requests.org/en/latest/user/quickstart/#more-complicated-post-requests
我嘗試了混合結果的其他方式,但效果不如預期,這也不是API的問題,因為我們有其他語言的庫,而且效果很好。
很難猜測,如果沒有有關HTTP客戶端和服務器API的更多詳細信息,出了什么問題。 我首先嘗試調試的方法是搶電線並檢查,如果您生成的請求與通過其他客戶端的實現生成的請求相同,並回答以下問題:
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.