python-关于Http向服务器传参的四种方式

本文介绍了通过HTTP协议向服务器传递参数的四种方式:1) 通过URL路径参数;2) 使用查询字符串;3) 通过请求体,包括表单类型和非表单类型;4) 利用请求头。Django框架中的request对象提供了方便的方法来获取这些参数。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

利用HTTP协议向服务器传参四种方式:
    1.提取URL的特定部分,可以在服务端路由中用正则截取 如url(r'^weather/(?P<city>[a-z]+)/(?P<year>\d{4})/$', views.weather)
                                                                                               按命名参数?P<city> 在函数传参是不用考虑顺序
                
    2. 查询字符串  ?a=1&b=2&c=3   request.GET.get('a') 不分请求方式,即使客户端用POST请求,依然用request.GET获取
            HttpResponse对象属性GET,POST都是QeryDict类型的对象  方法get()根据键取值,一键多值时取最后一个,不存在返回None
                                                                                                                  getlist()根据键取值,以列表返回不存在返回[] 可设默认值
                                                                        
    3.请求体  请求方式有POST,PUT,PATCH,DELETE  django默认开启了csrf防护 测试时在setting中的MIDDLEWARE中关闭
            3.1 表单类型 通过request.POST获取请求数据, 且 request.POST只能获取POST方式的请求体表单数据
            3.2 非表单类型 django无法自动解析,可以通过request.body获取原始请求数据,返回的bytes类型
            
    4.请求头 通过request.META获取请求头headers中数据  为字典类型 如 request.META['CONTENT_TYPE']
        其他常用HttpResponse对象属性  method:请求方式,user:请求的用户对象,path:请求页面的完整路径,不包含域名和参数部分
                                                             encoding:提交的数据编码格式  FILES:类似字典对象,包含所有上传文件

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值