位置: 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开发小技巧)

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

  • 小米怎么关闭纯净模式(小米怎么关闭纯净模式安全服务)

    小米怎么关闭纯净模式(小米怎么关闭纯净模式安全服务)

  • 美版卡贴激活sim卡无效(美版卡贴激活后打不开4g网络)

    美版卡贴激活sim卡无效(美版卡贴激活后打不开4g网络)

  • 微信朋友圈的位置怎么设置(微信朋友圈的位置可以改吗)

    微信朋友圈的位置怎么设置(微信朋友圈的位置可以改吗)

  • 怎么扫全家福(2021全家福怎么扫)

    怎么扫全家福(2021全家福怎么扫)

  • 苹果手机插优盘没反应(苹果手机插优盘从哪里打开)

    苹果手机插优盘没反应(苹果手机插优盘从哪里打开)

  • 华为nova6耳机和充电器是一个孔吗(华为nova 6耳机)

    华为nova6耳机和充电器是一个孔吗(华为nova 6耳机)

  • 1200mbps是千兆路由器吗(1200兆路由器是千兆的)

    1200mbps是千兆路由器吗(1200兆路由器是千兆的)

  • 照片格式jpg和jpeg是什么意思(照片格式JPG和JPEG)

    照片格式jpg和jpeg是什么意思(照片格式JPG和JPEG)

  • 扫描版和pdf版有什么区别(扫描版和pdf版有区别吗)

    扫描版和pdf版有什么区别(扫描版和pdf版有区别吗)

  • 路由器远端服务器无响应是怎么回事(路由器远端服务器地址)

    路由器远端服务器无响应是怎么回事(路由器远端服务器地址)

  • 赛扬g1620相当于i几(赛扬g1620相当于几代i3)

    赛扬g1620相当于i几(赛扬g1620相当于几代i3)

  • 淘宝电商是什么工作(淘宝电商是什么时候开始的)

    淘宝电商是什么工作(淘宝电商是什么时候开始的)

  • 电脑恢复出厂设置失败是怎么回事(电脑恢复出厂设置会删除所有数据吗)

    电脑恢复出厂设置失败是怎么回事(电脑恢复出厂设置会删除所有数据吗)

  • 互联网和移动互联网有什么区别(互联网和移动互联网革命属于技术革命吗)

    互联网和移动互联网有什么区别(互联网和移动互联网革命属于技术革命吗)

  • 快手号注销了手机号会解绑吗(快手号注销了手机绑定会不会解绑)

    快手号注销了手机号会解绑吗(快手号注销了手机绑定会不会解绑)

  • 小米开发者选项在哪里(小米开发者选项在哪里打开)

    小米开发者选项在哪里(小米开发者选项在哪里打开)

  • 多个退款可以用一个单号吗(多个退款可以叫一个上门取件吗)

    多个退款可以用一个单号吗(多个退款可以叫一个上门取件吗)

  • 微信充值和提现收费吗(微信充值和提现的手续费是多少)

    微信充值和提现收费吗(微信充值和提现的手续费是多少)

  • ios13怎么长截图(ios13如何长截图)

    ios13怎么长截图(ios13如何长截图)

  • 米家app怎么添加投影(米家app怎么添加小爱音箱)

    米家app怎么添加投影(米家app怎么添加小爱音箱)

  • windows7如何查看隐藏文件(windows7如何查看配置)

    windows7如何查看隐藏文件(windows7如何查看配置)

  • Element Plus 虚拟化表格组件的使用(排序、筛选、自定义单元格渲染) - 个人使用总结(element plus 虚拟化表格)

    Element Plus 虚拟化表格组件的使用(排序、筛选、自定义单元格渲染) - 个人使用总结(element plus 虚拟化表格)

  • Windows 10桌面声音图标不见了怎么办(win10声音设置面板在哪)

    Windows 10桌面声音图标不见了怎么办(win10声音设置面板在哪)

  • win7电脑时间同步出错解决方法(windows7电脑时间不对)

    win7电脑时间同步出错解决方法(windows7电脑时间不对)

  • 一般纳税人企业所得税是多少
  • 关税的计算公式是什么
  • 计提坏账所得税费用分录
  • 金税盘技术维护费怎么申报
  • 季度申报残保金怎么填写
  • 污水处理费免征增值税申报怎么填写
  • 企业股东分红所得税税率表
  • 企业所得税和增值税都要交吗
  • 公司注销时有大额应付款如何做账务处理合适?
  • 销售库存商品计入什么科目
  • 收到销售折让的红字怎么做账
  • 收到客户样衣定做款会计科目是什么?
  • 过期没有进行申报印花税会怎样
  • 当年缴纳的税金怎么入账
  • 公司未分配利润太大,怎么处理好
  • 租车服务的税率
  • 招聘时开具的专用发票可以抵扣吗?
  • 审核发票的要素
  • 去年没有交社保,今年交了有用吗
  • 正确解读《非居民金融账户涉税信息尽职调查管理办法》
  • 电商企业如何确定产品结构
  • 补贴收入营业外收入比例过高
  • 从对公账户转账到个人账号需要多久?
  • 投资回报期限
  • os x yosemite dp6下载 os x 10.10 dp6官方下载地址
  • linux中cw
  • 在认缴期限内未出资是否违法
  • 股权指的是
  • 凯恩kane
  • 会计月报表怎么做表格
  • 工业企业制造费用包括
  • 公户发工资必须是员工账号必须是公户开户行吗
  • 公司法人往公司账户转钱会计分录
  • uni-swiper-dot
  • thinkphp ide
  • javaweb购物车设计报告
  • unipoint
  • vue和react差别
  • 处置结余的工程款怎么算
  • 以前年度收入如何调账
  • 邮电局上级部门
  • 含消费税的商品开成了不含消费税怎么办
  • 资产处置收益的账务处理
  • 收到现金股利或债券利息时会计分录怎么做
  • 免税产品出口是否可以退税
  • 当月入账的进项税必须当月认证吗
  • 关联债资比例是什么意思
  • sqlserver存储过程if语句
  • 公司财务报表中不设其他综合收益项目可以吗
  • 车辆维修费会计分录
  • 残保金季报还是月报
  • 材料已入库后收回怎么办
  • 土地增值税预缴计算方法70号公告
  • 应收票据的核算范围包括
  • 资产减值损失属于损益类的收入还是费用
  • 购入固定资产的会计科目
  • 营改增后工程项目计价规则也随之发生了改变对错
  • sql group by语句
  • centos7编译c语言
  • 如何给电脑重装系统win7系统
  • 如何手动添加开机密码
  • 删除 ubuntu
  • linux ioctrl
  • skyleap用不了
  • win8系统电脑没声音怎么办
  • 电脑光驱怎么装系统w7
  • macbook2020款改硬盘
  • 删除kernel
  • win7j
  • win8的ie浏览器
  • cocos2d
  • 深入浅出javascript
  • js制作倒计时
  • jquery json对象
  • bootstrap的表格
  • 东莞网上办税服务厅
  • 房租计入待摊费用
  • 南京市国家税务局官网
  • 国税局发票打印软件下载
  • 国家税务总局上海税务局(个人)
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设