位置: IT常识 - 正文

Django_request学习(django中httpresponse)

编辑:rootadmin
Django_request (1)请求方式 这里使用一个接口测试软件postman 可以看到里面有非常多的发起请求的方式,最常用的就是GET和POST请求,但是这些方法无法在网页的url里显示 在学习request参数之前,django框架中首先接到浏览器发来的请求第一站是经过框架自带的wsgi. ... Django_request(1)请求方式

推荐整理分享Django_request学习(django中httpresponse),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:django auth,django permission_required,django的auth,django auth,django auth,django documentation,django permission_required,django query,内容如对您有帮助,希望把文章链接给更多的朋友!

这里使用一个接口测试软件postman可以看到里面有非常多的发起请求的方式,最常用的就是GET和POST请求,但是这些方法无法在网页的url里显示在学习request参数之前,django框架中首先接到浏览器发来的请求第一站是经过框架自带的wsgi.py文件

"""WSGI config for djangoRegina project.It exposes the WSGI callable as a module-level variable named ``application``.For more information on this file, seehttps://docs.djangoproject.com/en/3.2/howto/deployment/wsgi/"""import osfrom django.core.wsgi import get_wsgi_applicationos.environ.setdefault('DJANGO_SETTINGS_MODULE', 'djangoRegina.settings')application = get_wsgi_application()

这个文件的作用就是接收浏览器数据,进行数据解析,并按照http协议的请求格式进行封装传递给路由分发部分

(2)请求内容def ZJR_request(request): #请求格式 print(request.method) #请求体 print(request.body)

因为在get请求当中并没有参数设置,所以得到的请求体为空。如果需要加入请求体的内容,那么需要改为post请求

错误修正url错误如果发生这种错误,是因为没有在url末尾写全,必须以/结尾csrfCSRF # 表示django全局发送post请求均需要字符串验证功能:防止跨站请求伪造的功能工作原理:客服端访问服务器,在服务端正常返回给客户端数据的时候,而外返回给客户端一段字符串,等到客户端下次访问服务器时,服务器会到客户端查找先前返回的字符串,如果找到则继续,找不到就拒绝。访问流程:客户端 —> URL路由系统—> CSRF—> 视图函数需要在客户端页面的post表单中添:{% csrf_token%}将setting.py里的'django.middleware.csrf.CsrfViewMiddleware'注释掉就可以了

此时得到了刚刚提交的以urlencoded方式的数据,这种格式就是将普通的键值对变为用&符号连接的字符串常用的还有通过json格式传输的键值对,选择raw选项,并在下来菜单中选择json

这里面的字符必须使用双引号

request.postDjango_request学习(django中httpresponse)

这个方法也是输出请求体的一种,但是需要注意的是它并不适用每一种传参格式这是通过urlencoded格式这是json格式

获取值 name = request.POST.get("name") age = request.POST.get("age") print(name,age)

这个是必须通过urlencoded格式传参,然后通过POST方法得到具体的值

获取值列表

如果在传参的时候一个关键字包含了多个内容,就需要getlist方法

name = request.POST.getlist("name")

如果只用get方法,按照django自己的逻辑,只能选去这个关键字的最后一个选项

get请求

在postman里,get请求的参数要在param里面添加

获取路径print(request.path) print(request.get_full_path())

如果get请求中添加了参数,那么get_full_path方法则会取到所有参数,但path方法则不会但如果get请求里没有添加参数,两者的输出结果是一样的

获取请求头request.META

通过这种方法挥获得一大堆的键值对,通过解析可以获取到格式化后的内容

{'PATH': '/Users/ivanlee/opt/anaconda3/condabin:/usr/local/sbin:/usr/local/bin:/Library/Frameworks/Python.framework/Versions/2.7/bin:/Library/Frameworks/Python.framework/Versions/3.8/bin:/usr/local/bin:/usr/local/sbin:/Library/Frameworks/Python.framework/Versions/3.10/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/go/bin:/usr/local/share/dotnet:~/.dotnet/tools:/Library/Apple/usr/bin:/usr/local/mysql/bin:/usr/local/mysql/bin:/Users/ivanlee/.dotnet/tools:/usr/local/mysql/bin','MANPATH': '/usr/local/share/man::','CONDA_EXE': '/Users/ivanlee/opt/anaconda3/bin/conda','CONDA_PYTHON_EXE': '/Users/ivanlee/opt/anaconda3/bin/python','HOMEBREW_PREFIX': '/usr/local','COMMAND_MODE': 'unix2003','_CE_M': '','LOGNAME': 'ivanlee','HOMEBREW_REPOSITORY': '/usr/local/Homebrew','XPC_SERVICE_NAME': 'application.com.jetbrains.pycharm.ce.24716539.38684274','PWD': '/Users/ivanlee/Desktop/djangoRegina','PYCHARM_HOSTED': '1','INFOPATH': '/usr/local/share/info:','CONDA_SHLVL': '0','__CFBundleIdentifier': 'com.jetbrains.pycharm.ce','PYTHONPATH': '/Users/ivanlee/Desktop/djangoRegina','SHELL': '/bin/zsh','PYTHONIOENCODING': 'UTF-8','HOMEBREW_BOTTLE_DOMAIN': 'https://mirrors.ustc.edu.cn/homebrew-bottles','OLDPWD': '/','HOMEBREW_CELLAR': '/usr/local/Cellar','USER': 'ivanlee','TMPDIR': '/var/folders/48/byh7qq5528sfmw6vgsxnd9g80000gn/T/','SSH_AUTH_SOCK': '/private/tmp/com.apple.launchd.qyJ40GUnAv/Listeners','_CE_CONDA': '','XPC_FLAGS': '0x0','PYTHONUNBUFFERED': '1','__CF_USER_TEXT_ENCODING': '0x1F5:0x0:0x0','LC_CTYPE': 'en_US.UTF-8','HOME': '/Users/ivanlee','DJANGO_SETTINGS_MODULE': 'djangoRegina.settings','TZ': 'UTC','RUN_MAIN': 'true','SERVER_NAME': '1.0.0.127.in-addr.arpa','GATEWAY_INTERFACE': 'CGI/1.1','SERVER_PORT': '8090','REMOTE_HOST': '','CONTENT_LENGTH': '24','SCRIPT_NAME': '','SERVER_PROTOCOL': 'HTTP/1.1','SERVER_SOFTWARE': 'WSGIServer/0.2','REQUEST_METHOD': 'POST','PATH_INFO': '/JRrequest/jr/','QUERY_STRING': 'name=regina','REMOTE_ADDR': '127.0.0.1','CONTENT_TYPE': 'application/x-www-form-urlencoded','HTTP_USER_AGENT': 'PostmanRuntime/7.29.2','HTTP_ACCEPT': '*/*','HTTP_POSTMAN_TOKEN': 'e474691f-e449-4c99-b8ff-d6c625b6c5b6','HTTP_HOST': '127.0.0.1:8090','HTTP_ACCEPT_ENCODING': 'gzip, deflate, br','HTTP_CONNECTION': 'keep-alive','wsgi.input': < django.core.handlers.wsgi.LimitedStream object at 0x7feafca4d160 > ,'wsgi.errors': < _io.TextIOWrapper name = '<stderr>'mode = 'w'encoding = 'utf-8' > ,'wsgi.version': (1, 0),'wsgi.run_once': False,'wsgi.url_scheme': 'http','wsgi.multithread': True,'wsgi.multiprocess': False,'wsgi.file_wrapper': < class 'wsgiref.util.FileWrapper' >}

还可以从这里进行获取

print(request.META.get("HTTP_HOST"))

自定义请求头

这里在最后一行添加了自定义的一对键值对,提交以后我们可以看到META内容里的经过格式化的信息同样也可以通过get方式获得,格式写成HTTP开头

本文链接地址:https://www.jiuchutong.com/zhishi/304487.html 转载请保留说明!

上一篇:浅谈Vue开发最佳实践—事项清单(vue开发小技巧)

下一篇:浅谈逻辑选择器 -- 父选择器它来了!(逻辑电路选择器)

  • 新手怎样做好淘宝网店推广?(新手怎样做好淘宝销售)

    新手怎样做好淘宝网店推广?(新手怎样做好淘宝销售)

  • 为什么购买了爱奇艺会员用不了(为什么购买爱奇艺一定要用苹果账户订阅呢)

    为什么购买了爱奇艺会员用不了(为什么购买爱奇艺一定要用苹果账户订阅呢)

  • oppofindx2是曲面屏吗(findx2是不是曲面屏)

    oppofindx2是曲面屏吗(findx2是不是曲面屏)

  • 华为n6怎么插耳机(华为note6手机耳机插孔)

    华为n6怎么插耳机(华为note6手机耳机插孔)

  • 火山号怎么登录抖音短视频(火山号怎么登录到抖音平台)

    火山号怎么登录抖音短视频(火山号怎么登录到抖音平台)

  • 联通大王卡突然无服务(联通大王卡突然变成3g)

    联通大王卡突然无服务(联通大王卡突然变成3g)

  • 机箱风扇进风要大于出风吗(机箱风扇进风和出风的区别)

    机箱风扇进风要大于出风吗(机箱风扇进风和出风的区别)

  • p30如何设置屏幕常亮(p30pro如何设置屏幕)

    p30如何设置屏幕常亮(p30pro如何设置屏幕)

  • qq邮箱黑名单在哪查看(qq邮箱黑名单在哪里设置)

    qq邮箱黑名单在哪查看(qq邮箱黑名单在哪里设置)

  • 拉黑对方还能收到信息吗(拉黑对方还能收到微信吗)

    拉黑对方还能收到信息吗(拉黑对方还能收到微信吗)

  • 苹果手机接不了电话但可以打出去(苹果手机接不了陌生电话怎么解除)

    苹果手机接不了电话但可以打出去(苹果手机接不了陌生电话怎么解除)

  • 抖音新注册的号什么时候才能发作品(抖音新注册的号风控期多久)

    抖音新注册的号什么时候才能发作品(抖音新注册的号风控期多久)

  • 我的红包记录怎么查(我的红包记录怎么删除不了)

    我的红包记录怎么查(我的红包记录怎么删除不了)

  • 电池的作用和弊端(电池的作用和弊端有哪些)

    电池的作用和弊端(电池的作用和弊端有哪些)

  • k歌被对方拉黑了自己怎么解除(k歌被对方拉黑访问他主页他看的到吗?)

    k歌被对方拉黑了自己怎么解除(k歌被对方拉黑访问他主页他看的到吗?)

  • pcpm00是什么型号(pcam00是什么型号)

    pcpm00是什么型号(pcam00是什么型号)

  • 电信4g有几个频段(电信4g频点都是有哪些)

    电信4g有几个频段(电信4g频点都是有哪些)

  • 手机老是自动重启怎么回事 (手机老是自动重启是什么原因)

    手机老是自动重启怎么回事 (手机老是自动重启是什么原因)

  • 手机清内存怎么清理(手机清内存怎么找Qq聊天图片)

    手机清内存怎么清理(手机清内存怎么找Qq聊天图片)

  • 华为p30能不能反向充电(华为p30有反向充电功能吗)

    华为p30能不能反向充电(华为p30有反向充电功能吗)

  • 新版Edge浏览器开启“自动沉浸式阅读器”功能(新版edge浏览器如何恢复设置)

    新版Edge浏览器开启“自动沉浸式阅读器”功能(新版edge浏览器如何恢复设置)

  • 深度学习实战——不同方式的模型部署(CNN、Yolo)

    深度学习实战——不同方式的模型部署(CNN、Yolo)

  • 汽车装饰属于什么服务
  • 出口退税发票必须是专票吗
  • 调研费包括哪些科目
  • 企业的办税员承担责任吗
  • 微信支付过路费怎么开电子发票
  • 建筑企业收到预售款时需要缴纳增值税吗
  • 注册资本认缴与实缴会计如何做账
  • 支付银行借款利息属于现金使用范围吗
  • 高速公路通行费怎么计算的
  • 小规模公司没有进项票 开票需要交什么税
  • 一次性离职补偿个税
  • 购买固定资产增值税可以抵扣
  • 装卸费可以抵扣销项税额吗
  • 淘宝电商会计交税怎么交?
  • 外币报表折算差额会计分录
  • 住宿专票怎么入账
  • 咨询费如何入账
  • 城市垃圾处理项目
  • 增值税专用发票丢了怎么补救
  • 生活中都交了哪些朋友
  • 保户储金科目属于保险公司的什么科目
  • 原材料实际成本法核算问题
  • 销售净利率如何分析出来
  • 无法访问移动网络怎么办
  • windows10如何设置锁屏时间
  • php数组清空
  • 小米路由器开启ssh后怎么安装插件
  • php 字符串函数
  • 代扣代缴个税手续费返还政策
  • 个人所得税账务处理分录怎么做
  • 顺流交易逆流交易未实现内部交易损益
  • windows未能正常启动
  • 税务机关为小规模纳税人
  • nfcmp3
  • 红字发票负数要怎么抵掉
  • java中怎么连接数据库
  • vue vscode snippets
  • vue中使用原生js
  • python功能强大而深受欢迎的原因
  • raisecom删除命令
  • 金蝶年底结账流程
  • 工资外一次性收入88000交多少税
  • 多付款退回怎样写说明
  • 织梦使用教程
  • 拍卖收入个人所得税
  • 成本会计制造费用核算的内容
  • 购买仪器属于什么费用
  • 会计科目备抵科目都有哪些
  • 发票丢失一张罚款标准
  • mysql数据查询慢
  • 企业研发费用加计扣除比例
  • 微信,支付宝等第三方支付对货币的影响
  • 差旅费误餐补助
  • 一般纳税人增值税申报表怎么填写
  • 财付通支付备付金
  • 购买货物运输费计入什么科目
  • 所得税费用会计科目编码
  • 出库单上面的单位写谁的
  • 咨询费的支出范围
  • 什么是预收账款的正常余额
  • 筹建期业务招待费的扣除标准
  • 企业会计准则规定,企业在对会计要素
  • bios中怎么设置显卡
  • Mtdacq.exe - Mtdacq是什么进程 有什么用
  • 如何解决win7系统中鼠标键盘不能用
  • win10预览版21h2
  • linux中find命令用法
  • linux中文件权限读写执行的三种标志符号依次是
  • windows 2002关机
  • Android 使用的字体
  • unity3d ik
  • 启动游戏使用的文件夹什么意思
  • 使用筷子就餐会不会传染乙肝病毒
  • 引用jquery后没反应
  • 面向对象的编程语言更适合大规模编程
  • base adk
  • python操作mongodb数据库
  • 应纳税额减征额账务处理
  • 小规模国税申报表填写方法
  • 增值税专用发票和普通发票的区别
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设