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

yipeiwu_com7年前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 实现矩阵填充0的例子

需求: 原矩阵 [[1 2 3] [4 5 6] [7 8 9]] 在原矩阵元素之间填充元素 0,得到 [[1. 0. 2. 0. 3.] [0. 0. 0. 0. 0....

python格式化字符串实例总结

本文实例总结了python格式化字符串的方法,分享给大家供大家参考。具体分析如下: 将python字符串格式化方法以例子的形式表述如下: * 定义宽度 Python代码如下: &g...

python 执行shell命令并将结果保存的实例

方法1: 将shell执行的结果保存到字符串 def run_cmd(cmd): result_str='' process = subprocess.Popen(cmd, sh...

Python设计模式之单例模式实例

注:使用的是Python 2.7。 一个简单实现复制代码 代码如下:class Foo(object):    __instance = None ...

python进行两个表格对比的方法

如下所示: # -*- coding:utf-8 -*- import xlrd import sys import re import json dict1={} dict2={...