私はDjangoプログラミングの初心者です。基本的なcurlコマンドをいくつか読んだ後、curlを使用してPythonサーバーに次のPOSTリクエストを送信しました。
curl --data "system_uuid=b28964bf-3e9e-47d7-af5e-4e221cc1a697&media_id=1&Status=1&upload_on=2013-12-04 17:15:32" http://127.0.0.1:8000/server/32/1001/2/
次のURLへ
from django.conf.urls.defaults import patterns
handler500 = 'django.views.defaults.server_error'
urlpatterns = patterns('server.views',
( r'^server/32/(?P<client_id>\d+)/(?P<msg_version>\d+)/$','check_media_status'),)
私のビュー「check_media_status」は次のようにシンプルです。
def check_media_status(request, client_id, msg_version ):
print "Request Accepted"
return http.HttpResponse("ok")
しかし、私のPythonサーバーでは次のエラーメッセージが常に表示されます
[21/Jul/2014 10:51:43] "POST /server/32/1001/2/ HTTP/1.1" 500 94027
私のDjangoバージョンは1.3.1、Pythonバージョンは2.7.3です
何が間違っているのか分かりません。:(
答え1
投稿データにスペースが含まれています。「+」に置き換えてください。正しくエンコードされるはずです。