zoukankan      html  css  js  c++  java
  • django中使用POST方法 获取POST数据

    在django中获取post数据,首先要规定post发送的数据类型是什么。

    1.获取POST中表单键值数据

    如果要在django的POST方法中获取表单数据,则在客户端使用JavaScript发送POST数据前,定义post请求头中的请求数据类型:

    xmlhttp.setRequestHeader("Content-type","application/x-www-form-urlencoded");

    在django的views.py相关方法中,需要通过request.POST获取表单的键值数据,并且可以通过reques.body获取整个表单数据的字符串内容

    复制代码
    if(request.method == 'POST'):
            print("the POST method")
            concat = request.POST
            postBody = request.body
            print(concat)
            print(type(postBody))
            print(postBody)
    复制代码

    相关日志:

    the POST method
    <QueryDict: {u'username': [u'abc'], u'password': [u'123']}>
    <type 'str'>
    username=abc&password=123

     2.获取POST中json格式的数据

    如果要在django的POST方法中获取json格式的数据,则需要在post请求头中设置请求数据类型:

    xmlhttp.setRequestHeader("Content-type","application/json");

    在django的views.py中导入python的json模块(import json),然后在方法中使用request.body获取json字符串形式的内容,使用json.loads()加载数据。

    复制代码
    if(request.method == 'POST'):
            print("the POST method")
            concat = request.POST
            postBody = request.body
            print(concat)
            print(type(postBody))
            print(postBody)
            json_result = json.loads(postBody)
            print(json_result)
    复制代码

    相关日志:

    the POST method
    <QueryDict: {}>
    <type 'str'>
    {"sdf":23}
    {u'sdf': 23}
  • 相关阅读:
    C++中四大强制类型转换!
    队列(queue)的实现
    栈(stack)的实现
    单向链表
    十种排序算法详解及C++实现
    extern “C”
    C语言内存分配及各种数据存储位置
    Python中的classmethod与staticmethod
    关于ORM,以及Python中SQLAlchemy的sessionmaker,scoped_session
    Python中的SQLAlchemy
  • 原文地址:https://www.cnblogs.com/nuomin/p/10880549.html
Copyright © 2011-2022 走看看