Raspberry Pi で温度データをログに記録し、これを自己ホスト型 RESTful API に投稿しようとしています。
API にデータを正常に投稿する際に問題が発生しています。コードは次のとおりです。
[rPi Python コード]
import urllib
import urllib2
url = 'http://doopcreations.com/raspberry/api/data'
params = urllib.urlencode({
'item': 'temperature',
'data': '25.00'
})
print("Posting data: " + params)
response = urllib2.urlopen(url, params).read()
print(response)
これにより、次のエラーが表示されます。
{"error":{"text":SQLSTATE[23000]: 整合性制約違反: 1048 列 'item' を null にすることはできません}}
注: また、NULL 値を許可するように DB を更新しようとしました。これにより、null 値のみが挿入されます。つまり、Python コードがデータを投稿していないようです.......
これを解決する方法についてのアイデアはありますか?
[アップデート]
「Chrome ウェブストア - 高度な REST クライアント」をテスト ツールとして使用する:
私が送信した場合:
{
"item": "temperature",
"data": "25.00"
}
ペイロードとして - POST が成功します。
ただし、送信した場合:
{
'item': 'temperature',
'data': '25.00'
}
ペイロードとして-エラーが発生します:
{"error":{"text":SQLSTATE[23000]: Integrity constraint violation: 1048 Column 'item' cannot be null}}
--