iis服务器助手广告广告
返回顶部
首页 > 资讯 > 后端开发 > Python >Django 如何从request中获取前端数据
  • 547
分享到

Django 如何从request中获取前端数据

2024-04-02 19:04:59 547人浏览 安东尼

Python 官方文档:入门教程 => 点击学习

摘要

Django ###request 如果说 urls.py 是 DjanGo 中前端页面和后台程序桥梁,那么 request 就是桥上负责运输的小汽车 可以说后端接收到的来至前端的信

Django

###request

如果说 urls.py 是 DjanGo前端页面和后台程序桥梁,那么 request 就是桥上负责运输的小汽车

可以说后端接收到的来至前端的信息几乎全部来自于requests中。

##request对象的属性

request.META

request.MATE获取的是一个标准的python字典。它包含了所有的Http请求信息

1 CONTENT_LENGTH —— 请求的正文的长度(是一个字符串)。

2 CONTENT_TYPE —— 请求的正文的MIME 类型。

3 HTTP_ACCEPT —— 响应可接收的Content-Type。

4 HTTP_ACCEPT_ENcoding —— 响应可接收的编码。

5 HTTP_ACCEPT_LANGUAGE —— 响应可接收的语言。

6 HTTP_HOST —— 客服端发送的HTTP Host 头部。

7HTTP_REFERER —— Referring 页面。

8 HTTP_USER_AGENT —— 客户端的user-agent 字符串。

9 QUERY_STRING —— 单个字符串形式的查询字符串(未解析过的形式)。

10 REMOTE_ADDR —— 客户端的IP 地址。

11 REMOTE_HOST —— 客户端的主机名。

12 REMOTE_USER —— 服务器认证后的用户。

13 REQUEST_METHOD —— 一个字符串,例如"GET" 或"POST"。

14 SERVER_NAME —— 服务器的主机名。

15 SE0RVER_PORT —— 服务器的端口(是一个字符串)

获取请求的源主机:HttpRequest.get_host()

request.scheme

请求的方式,即http或者是https

request.path

请求的路径,这里的路径是指相对路径,也就是说一个登陆后台页面的请求:http://127.0.0.1:8000/admin 的路径是 /admin

获取完整路径(包括参数):HttpRequest.get_full_path()

获取绝对url: HttpRequest.bulid_absolute_uri(location) 此参数默认为完整路径

request.encoding

请求提交的数据的编码方式

request.session

request.session 获取的是一个类似于字典的对象,可以进行读取写入操作,常用来保存一些数据来实现会话跟踪技术。因为 HTTP 是一个无状态,不连续的协议。

如果想让服务器记住当前的访问对象,就需要记录请求者的一些信息来达到这个目的。


# 设置session
request.session["name"] = "root"
# 获取session
name = request.sessin["name"]

!!!说到这里需要提一下,django会默认为session使用JSON序列化。json序列化只能序列化一些基本数据类型,如数字,字符串,列表等。

所以session不能直接存储对象.可以简单的在settings中添加 SESSION_SERIALIZER = "django.contrib.sessions.serializers.PickleSerializer"

request.COOKIES

与session类似,区别是cookies数据是保存在客户端,session数据是保存在服务端。

相对而言session更安全,cookies在不同的浏览器上保存数据的大小限制也不同。但是,存在即合理。

cooike自有它的好处这里不多说。


# 设置cookies
response.set_cookie('name','root')
# 设置加密cookies
response.set_cookie('passsWord','123456',salt='@#$!%^&')
# 获取cookie
request.COOKIES.get("name")
# 获取加密的cookie
request.get_signed_cookie("password",salt="@#$!%^&")

request.method

请求方式 POST/GET…

####下面正式开始获取数据

就是在这里遇见了一些小问题,所以导致我写这篇文章来记录一下

request.body

请求的主体,返回的是一个字符串

request.data

请求的数据部分,返回的是一个字典对象(除此之外,与request.body是很类似的)

request.POST

获取post方式表单中提交的数据


request.POST["username"]
request.POST.get("username")

request.GET

获取get方式表单中或url提交的数据


request.GET["username"]
request.GET.get("username")

补充:django框架下,前端调取数据详解

首先话痨一下,公司服务端使用的是Python语言,而我们的后台项目使用的django框架,前端调取数据也是基于框架输出的。下面总结一下django框架下,前端调取数据的各种情况。

在前端页面调取数据,我们最常使用的方式总结为以下几种:

数据直接输出、for循环输出、if判断输出、日期格式化。

下面我们针对每一种情况看看django是怎样输出的

1、数据直接输出


{{ fORM.deliver_institution }}

2、for循环和if判断结合使用


{% for item in form.newborn_hearing_screening %}
    {% if forloop.first %}
    {% else %}
        {{ item }} 
    {% endif %}
{% endfor %}

3、日期格式化


{{ my_date|date:"Y-m-d" }}

以上为个人经验,希望能给大家一个参考,也希望大家多多支持编程网。如有错误或未考虑完全的地方,望不吝赐教。

--结束END--

本文标题: Django 如何从request中获取前端数据

本文链接: https://www.lsjlt.com/news/124376.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • Django 如何从request中获取前端数据
    Django ###request 如果说 urls.py 是 Django 中前端页面和后台程序桥梁,那么 request 就是桥上负责运输的小汽车 可以说后端接收到的来至前端的信...
    99+
    2022-11-12
  • Django怎么从request中获取前端数据
    这篇文章主要介绍Django怎么从request中获取前端数据,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!go适合做什么go是golang的简称,而golang可以做服务器端开发,且golang很适合做日志处理、数...
    99+
    2023-06-14
  • Django如何获取前端数据
    这篇文章主要介绍“Django如何获取前端数据”,在日常操作中,相信很多人在Django如何获取前端数据问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”Django如何获取前端数据”的疑惑有所帮助!接下来,请跟...
    99+
    2023-07-05
  • 如何使用AJAX获取Django后端数据
    这篇文章主要介绍“如何使用AJAX获取Django后端数据”,在日常操作中,相信很多人在如何使用AJAX获取Django后端数据问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”...
    99+
    2022-10-19
  • request如何获取body的json数据
    在request中可以获取到来自Http请求的body数据 比如获取json格式数据 代码: import com.alibaba.dubbo.common.utils.IOU...
    99+
    2022-11-12
  • Django中从mysql数据库中获取数据传到echarts方式
    尝试了几种方法,感觉过于复杂,于是自己写了一个方法。 (1)首先在要绘图的页面传入从数据库中提取的参数,这一步通过views可以实现; (2)然后是页面加载完成时执行的函数ready,调用方法f; (3)在函数f中获...
    99+
    2022-05-27
    Django mysql echarts
  • 如何利用AJAX获取Django后端数据详解
    使用Django服务网页时,只要用户执行导致页面更改的操作,即使该更改仅影响页面的一小部分,它都会将完整的HTML模板传递给浏览器。但是如果我们只想更新页面的一部分,则不必完全重新渲...
    99+
    2022-11-12
  • Python Django如何获取URL中的数据
    小编给大家分享一下Python Django如何获取URL中的数据,希望大家阅读完这篇文章之后都有所收获,下面让我们一起去探讨吧!Django获取URL中的数据URL中的参数一般有两种形式。如下所示:1. https://zy01...
    99+
    2023-06-25
  • 从 Angular Route 中提前获取数据的方法详解
    目录介绍你为什么应该使用 Resolver在应用中使用 Resolver创建服务并编写逻辑获取列表数据怎么应用一个预加载导航总结介绍 提前获取意味着在数据呈现在屏幕之前获取到数据。本...
    99+
    2022-11-13
  • Angular Route中如何提前获取数据
    这篇文章主要讲解了“Angular Route中如何提前获取数据”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“Angular Route中如何提前获取数据”...
    99+
    2022-10-19
  • 我从远端oracle视图中获取数据的过程
    这里涉及到三个oracle对象,一个是客户的视图,一个是客户提供的中转站服务器上的oracle,一个是我们自己的开发机的oracle,最终我们开发使用自己开发机的oracle的数据来进行开发,开发完成后,将...
    99+
    2022-10-18
  • php中如何获取数组前几位数据
    这篇文章主要介绍了php中如何获取数组前几位数据,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。php中可用array_slice()函数获取数组前几位数据,该函数可以返回数组...
    99+
    2023-06-15
  • Springboot如何获取前端反馈信息并存入数据库
    这篇文章给大家分享的是有关Springboot如何获取前端反馈信息并存入数据库的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。导入mybatis依赖<!--mybatis--><dependenc...
    99+
    2023-06-14
  • 如何从我们当前使用的数据库中的表中获取列列表
    要获取当前使用的数据库中表的列列表,您需要执行以下步骤:1. 连接到数据库:使用适当的数据库连接方法连接到您当前使用的数据库。这可以...
    99+
    2023-10-12
    数据库
  • 如何从我们当前使用的数据库中的表中获取列列表?
    可以使用 SHOW COLUMNS 语句来完成。它的语法如下 -语法SHOW COLUMNS FROM tab_name这里tab_name是我们要从中查看列列表的表的名称。示例在例如,我们从名为 Student_info 的表中获取列列表...
    99+
    2023-10-22
  • 如何从redis获取多条数据类型
    要从Redis获取多条数据类型,可以使用以下命令:1. GET:用于获取字符串类型的数据。可以使用单个GET命令来获取多个键的值。例...
    99+
    2023-09-06
    redis
  • SpringBoot如何配置获取request中body的json格式参数
    目录背景获取请求中的参数(非json格式参数)获取方法结论获取POST请求json格式的参数经过检索推荐方法(参看后边完整方法)实现方法使用背景 最近开发项目,因为有第三方调用我们的...
    99+
    2022-11-13
  • js如何从数组中获取随机值
    小编给大家分享一下js如何从数组中获取随机值,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!从数组中获取随机值有时我们需要从数组中随机选择一个值。一种方便的方法是可...
    99+
    2023-06-27
  • 如何使用stream从List对象中获取某列数据
    目录使用stream从List对象中获取某列数据stream通过List里对象中某个属性最小来取该最小对象总结使用stream从List对象中获取某列数据 在 JDK 8 中增加了 ...
    99+
    2022-12-23
    使用stream List获取某列数据 List获取数据
  • 如何使用 PHP 和 NumPy 从 NPM 索引中获取数据?
    NPM(Node Package Manager)是一个非常流行的 JavaScript 包管理器。它提供了一个丰富的包库,其中包括许多流行的框架和工具。如果你想要获取一些有关 NPM 包的数据,那么你可以使用 PHP 和 NumPy 库...
    99+
    2023-10-16
    numpy npm 索引
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作