我查了幾件東西,我只是沒有找到一個正在做我正在做的事情。我發現那些很近的,但我似乎無法得到它。將curl轉換爲Python請求.put
我有這個捲曲聲明。它成功時返回204,並且它工作正常。
# curl -v -H "Content-type: application/json" -X PUT -d '{"latitude":47.629355,"longitude":-122.3794778}' "http://myserver.com/location/private/location"
當我嘗試將其轉換到Python的要求,現在看來,這應該是如下:
headers = {'Content-type': 'application/json'}
data = {"latitude":'47.629355',"longitude":'-122.3794778'}
r = requests.put("http://myserver.com/location/private/location", headers=headers, data=data)
但多數民衆贊成失敗並返回一個400(壞請求)。所以,我已經形成了一些不太完整的東西。
我一直在捅它,改變引號等等。但根據我在SO和http://docs.python-requests.org/上看過的內容,它在我看來就像我做對了。
任何智慧分享將不勝感激。謝謝!
您將curl調用中的lat/long作爲float提供,但在Python代碼中作爲字符串提供。嘗試使用:'data = {「latitude」:47.629355,「longitude」:-122.3794778}'。否則代碼看起來很好。 – Bjorn
這也是我原來的數據,它不起作用。我再次嘗試,以確保我沒有錯過它,但仍然無法正常工作。仍然得到一個400. – mikecole79
打印r.text告訴我這個「無效的請求:無法讀取數字:緯度= 47.629355和經度= -122.3794778」 – mikecole79