Django接收post前端返回的json格式数据代码实现

yipeiwu_com6年前Python基础

post接收字符串

def subscription(request):
  msg = request.POST.get('msg')
  # tel_no = request.POST.get('tel_no')
  # email = request.POST.get('email')
  # ico_id = request.POST.get('ico_id')

  data = base64.b64decode(msg)
  data = data.decode('utf-8')
  data = json.loads(data)
  client = pymongo.MongoClient(host = 'localhost',port = 27017)
  db = client.users
  my_set = db.user
  if 'ico_id' not in data.keys():
    return HttpResponse(json.dumps({"result_code":1}))

  result_code = my_set.insert({"tel_no":data.get('tel_no'),"email":data.get('email'),"ico_id":data.get('ico_id'),'date':datetime.datetime.now()})
  return HttpResponse(json.dumps({"result_code":0}))

post接收json格式

def selectedico(request):

  if request.method == 'POST':
    web_id = json.loads(request.body.decode().replace("'", "\"")).get('id')
    client = pymongo.MongoClient(host = 'localhost',port = 27017)
    db = client.webdata
    my_set = db.webchinadata
    values = []
  #print(web_id)
    print(request.body.decode())
  
    for val in my_set.find():
    # value = value.decode('utf-8')
    # val = json.loads(value)
      val["_id"] = str(val["_id"])
      val["date"] = str(val["date"])
      discount = (''.join(val["discounts"])).split('\n')
      dis = [x.strip(' ') for x in discount if x != '']
      val["discounts"] = dis
      val["accept_coins"] = val["accept_coins"].split(",")
      details = (''.join(val["details"])).replace('\n','')
      val["details"] = details
    #print(val["_id"])
      if val["_id"] == web_id:
        values.append(val)

    return HttpResponse(json.dumps(values,ensure_ascii=False),content_type="application/json;charset=utf-8")

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

python自动截取需要区域,进行图像识别的方法

实例如下所示: import os os.chdir("G:\Python1\Lib\site-packages\pytesser") from pytesser import *...

python 自动重连wifi windows的方法

如下所示: # coding=utf-8 import urllib2 import urllib from cookielib import CookieJar import os...

Python使用turtule画五角星的方法

本文实例讲述了Python使用turtule画五角星的方法。分享给大家供大家参考。具体实现方法如下: #!/usr/bin/env python import turtle impo...

python多线程高级锁condition简单用法示例

本文实例讲述了python多线程高级锁condition简单用法。分享给大家供大家参考,具体如下: 多线程编程中如果使用Condition对象代替lock, 能够实现在某个事件触发后才处...

解决Python正则表达式匹配反斜杠''\''问题

在学习Python正则式的过程中,有一个问题一直困扰我,如何去匹配一个反斜杠(即“\”)? 一、引入 在学习了Python特殊字符和原始字符串之后,我觉得答案应该是这样的: 1)普通字符...