从Django请求获取Json数据

时间:2016-08-10 00:11:07

标签: python json django

我试图在Django中开发一个非常简单的脚本,我从请求中收集Json数据,然后将所有数据存储在数据库中。

我开发了一个用于将Json数据发送到Django视图的python脚本,但是我做错了什么而且我无法理解什么,因为每次我运行它,我得到了错误的数据!"。

有人可以帮助我吗?我做错了什么?

Sender.py

import json
import urllib2

data = {
         'ids': ["milan", "rome","florence"]
}

req = urllib2.Request('http://127.0.0.1:8000/value/')
req.add_header('Content-Type', 'application/json')

response = urllib2.urlopen(req, json.dumps(data))

Django view.py

from django.shortcuts import render

# Create your views here.
from django.http import HttpResponse
import json
from models import *

from django.http import StreamingHttpResponse
from django.views.decorators.csrf import csrf_exempt

@csrf_exempt
def value(request):

  try:
      data = json.loads(request.body)
      label = data['label']
      url = data ['url']
      print label, url
  except:
      return HttpResponse("Malformed data!")
  return HttpResponse("Got json data")

1 个答案:

答案 0 :(得分:0)

你的词典"数据"在sender.py中只包含一个带有键" ids"的值。但在view.py中,您正在尝试访问密钥"标签"和" url"在这个解析的字典中。