GET请求和POST请求区别

6.1 GET请求
        一般用于向服务器获取数据,也可以向服务器传输少量数据
        (path转换器传参)         (查询字符串传参)

        传参方式:
            path转换器传参 (服务器-->)
                path('page/<int:num>', views.pagen)
                def pagen(request, num)
                    pass

            查询字符串传参  (-->服务器)
                127.0.0.1:8000/page?a=10&b=20&a=30
                # 服务器拿数据
                def test_get(request):
                    num = request.GET['b']  # 空值会报错  20
                    num = request.GET.get('a', '默认值')  # 只拿第一个  10
                    num = request.GET.getlist('a')  # 拿完  ['10', '30']

        能够产生GET请求的场景:
            1. 浏览器地址栏中输入URL,回车后
            2. `<a href="地址?参数=值&参数=值">`
            3. form表单中的method为get

    6.2 POST请求
        一般用于向服务器传输大量数据,通过form表单提交
            <form method='POST' action="/目标路由名称">
                姓名:<input type="text" name="username">
                ...
                <input type='submit' value='提交'>
            </form>

        传参方式: form表单提交(-->服务器)
            # 服务器拿数据
            def test_get(request):
                uname = request.POST['username']
                uname = request.POST.get('username')
                uname = request.POST.getlist('username')

        form标签内的这三个标签的name属性和值,会以键值对形式提交给action:
            <input name='xxx'>
            <select name='yyy'></select>
            <textarea name='zzz'></textarea>

    注意: 向服务器传输数据的时候,
         GET请求,表单数据以查询字符串的方式放到地址栏中. [数据裸奔]
         POST请求,表单数据放在请求体中. [相对安全]

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值