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中字典创建、遍历、添加等实用操作技巧合集

字段是Python是字典中唯一的键-值类型,是Python中非常重要的数据结构,因其用哈希的方式存储数据,其复杂度为O(1),速度非常快。下面列出字典的常用的用途. 一、字典中常见方法列...

python cx_Oracle模块的安装和使用详细介绍

python cx_Oracle模块的安装 最近需要写一个数据迁移脚本,将单一Oracle中的数据迁移到MySQL Sharding集群,在linux下安装cx_Oracle感觉还是有一...

Python的函数的一些高阶特性

高阶函数英文叫Higher-order function。什么是高阶函数?我们以实际代码为例子,一步一步深入概念。 变量可以指向函数 以Python内置的求绝对值的函数abs()为例,调...

树莓派使用python-librtmp实现rtmp推流h264的方法

目的是能使用Python进行rtmp推流,方便在h264帧里加入弹幕等操作。 librtmp使用的是0.3.0,使用树莓派noir官方摄像头适配的。 通过wireshark抓ffmpeg...

python 实现求解字符串集的最长公共前缀方法

问题比较简单,给定一个字符串集合求解其中最长的公共前缀即可,这样的问题有点类似于最长公共子序列的问题,但是比求解最长最长公共子序列简单很多,因为是公共前缀,这样的话只需要挨个遍历即可,只...