requests模块模拟浏览器客户端发送数据

requests模拟端

import requests

##GET方式发送请求
# requests.get(url='http://127.0.0.1:8090/requests/?k1=123')
# #or
# requests.get(
#     url='http://127.0.0.1:8090/requests/',
#     params={"k1":"234"}
# )

'''POST方式发送请求'''
requests.post(
    url='http://127.0.0.1:8090/requests/',
    # data={"k1":"21","k2":"22"}  # 这种没有问题 <QueryDict: {'k1': ['21'], 'k2': ['22']}>
    # data={"k1":"21","k2":{"k3":"45"}}, #字典里面套字典,结果:<QueryDict: {'k1': ['21'], 'k2': ['k3']}>
    #为了避免上面情况的发生,用json参数
    json={"k1":"21","k2":{"k3":"45"}},#{'k1': '21', 'k2': {'k3': '45'}}
    #对应函数要做特殊处理
)
'''data和json发数据是的请求头不同,请求体中数据格式也不同
data:k1=21&k2=22
json:'{"k1":"21","k2":{"k3":"45"}}'
后端根据请求头的不同采取不同的处理方式
'''

对应函数处理端

from django.views.decorators.csrf import csrf_exempt
@csrf_exempt
def req(request):
    import json
    print(request.GET)
    print(request.POST)
    if request.method=="POST":
        print(json.loads(str(request.body,encoding="utf-8")))
    return HttpResponse("....")
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值