2015-02-07 81 views
1

在下面的代碼中,我試圖創建一個與http post的存儲庫,但我總是得到400不好的請求,當我發送的海報的http後,我得到201創建,這個代碼有什麼問題?http post成功與海報,但在python失敗

token = raw_input('Access Token: ') 
url = 'https://api.github.com/user/repos?access_token=' + token 
values = {"name":"newnewnewnew"} 
data = urllib.urlencode(values) 
req = urllib2.Request(url,data) 
response = urllib2.urlopen(req) 
the_page = response.read(); 
print the_page 

海報:

enter image description here

回答

1

根據the GitHub API v3 documentation,爲POST請求,參數應與JSON和該內容 - 類型進行編碼應application/json

import json 

.... 

token = raw_input('Access Token: ') 
url = 'https://api.github.com/user/repos?access_token=' + token 
values = {"name": "newnewnewnew"} 
data = json.dumps(values) # <--- 
req = urllib2.Request(url, data, headers={'Content-Type': 'application/json'}) # <--- 
response = urllib2.urlopen(req) 
the_page = response.read() 
print the_page