Glassfishで実行されているWebサービスにPythonRESTPOSTを作成しようとすると問題が発生します。POSTがCURLを使用して正常に機能することを確認しましたが、Pythonではうまくいきません。
これが正常に機能するCURLリクエストです。
curl -X POST -H "Content-Type: application/json" -d '{"id":1,"lastname":"smith"}'
http://192.168.0.20:8080/field1/resources/com.field1entity.field1
POSTリクエストを行うためのPythonコードは次のとおりです
import urllib
import httplib2
def call():
http = httplib2.Http()
url = 'http://192.168.0.20:8080/field1/resources/com.field1entity.field1'
params = urllib.urlencode({"id":11111,"lastname":"oojamalip"})
response, content = http.request(url, 'POST', params, headers={'Content-type':'application/json'})
print "lets stop here to have a looksy at the variables"
print content
if __name__ == '__main__':
namesPage = call()
print namesPage
コンソールからの出力、
予期しない文字('l'(コード108)):[ソース:org.apache.catalina.connector.CoyoteInputStreamで有効な値(数値、文字列、配列、オブジェクト、'true'、'false'、または'null')が必要です@ 18f494d; 行:1、列:2]
誰かが問題に光を当てることができることを願っています。
ありがとうニック