我正在開發一個應用程序,它連接到一個web服務,提供一個帶有數據的json字符串並接收回復。 我使用下面的代碼,我在那裏構建JSON,並嘗試將它張貼:django/python如何通過發佈json連接到web服務
def connectToService(request):
data='foxp3 factor'
l=[]
l.append(data)
l.append(80)
l.append(5)
data=json.dumps({"findCitations":l})
result = urllib2.urlopen('http://www.example.com/webservice', urllib.urlencode(data))
但它不工作。我希望來自Web服務的json響應將被存儲在結果中,然後我將找出解析它的方法,可能是通過對它進行反編譯。雖然有很多關於它的文獻(json,simplejson,HttpPequest),但它必須非常簡單,我還沒有設法做到這一點。任何解決方案
我認爲這是很有啓發。非常感謝你。我會嘗試! – geompalik
@Jon Clements,我嘗試過,但還沒有達到目標。我在shell中嘗試了這個。在'print r.text'中執行請求之後,它會返回一個鏈接並且沒有數據,這與我在瀏覽器中放置url時看到的鏈接完全相同。從這我假定該服務沒有發回任何數據? 我也在r = requests.post(url,data = json.dumps(有效內容),headers = header中使用headers = {「Content-type」:「application/json」,「encoding」:「utf-頭)。對此有何評論?我也試着找到另一個可用於網絡的api來測試我的代碼。你有什麼想法? – geompalik
好吧,我做到了。我再次打電話給該服務,但是這次是在第一次通話中返回的網址,並且工作正常。非常感謝您的建議。 – geompalik