Я изучаю Django 1.6.
Я хочу опубликовать JSON с помощью HTTP POST-запроса, и я использую Django для этой задачи для обучения.
Я пытался использовать request.POST['data']
, request.raw_post_data
, request.body
, но никто не работает для меня.
my views.py -
import json
from django.http import StreamingHttpResponse
def main_page(request):
if request.method=='POST':
received_json_data=json.loads(request.POST['data'])
#received_json_data=json.loads(request.body)
return StreamingHttpResponse('it was post request: '+str(received_json_data))
return StreamingHttpResponse('it was GET request')
Я публикую данные JSON, используя requests модуль.
import requests
import json
url = "http://localhost:8000"
data = {'data':[{'key1':'val1'}, {'key2':'val2'}]}
headers = {'content-type': 'application/json'}
r=requests.post(url, data=json.dumps(data), headers=headers)
r.text
r.text
должен печатать это сообщение и опубликованные данные, но я не могу решить эту простую проблему. скажите, пожалуйста, как собрать опубликованные данные в Django 1.6?