分享web开发知识

注册/登录|最近发布|今日推荐

主页 IT知识网页技术软件开发前端开发代码编程运营维护技术分享教程案例
当前位置:首页 > IT知识

web请求相关

发布时间:2023-09-06 02:29责任编辑:苏小强关键词:暂无标签

请求数据类型

data
request.post(url=‘xx‘,data={‘k1‘:‘v1,‘k2‘:‘v2‘})#数据: POST / http1.1\r\n....\r\n\r\nk1=v1&k2=v2
request.post(url=‘xx‘,data=json.dumps({‘k1‘:‘v1,‘k2‘:‘v2‘}))

#数据: ?POST / ?http1.1\r\n....\r\n\r\n{‘k1‘:‘v1,‘k2‘:‘v2‘}


 字节

request.post(url=‘xx‘,data=b‘asdfasdf‘)#数据: POST / http1.1\r\n....\r\n\r\n‘asdfasdf‘

 json

request.post(url=‘xx‘,json={‘k1‘:‘v1,‘k2‘:‘v2‘})#数据: POST / http1.1\r\nContent-type:application/json....\r\n\r\n{‘k1‘:‘v1,‘k2‘:‘v2‘}

问题:POST请求发数据

django:获取不到值?request.POST

发送数据格式:

方式一:request.post(url=‘xx‘,data={‘k1‘:‘v1,‘k2‘:‘v2‘})#数据: POST / http1.1\r\nContent-type:urlencode-form.......\r\n\r\nk1=v1&k2=v2

request.POST必然可以获取到值。

  • - content-type: urlencode-form
  • - 数据格式:k1=v1&k2=v2


方式二:

request.post(url=‘xx‘,json={‘k1‘:‘v1,‘k2‘:‘v2‘})#数据: POST / http1.1\r\nContent-type:application/json....\r\n\r\n{‘k1‘:‘v1,‘k2‘:‘v2‘}

通过request.body

  • 字节 = {‘k1‘:‘v1,‘k2‘:‘v2‘}
  • 字节转换字符串
  • 反序列化字符串 -> 字典

request.POST必然不可以获取到值。

  • - content-type: urlencode-form
  • - 数据格式:k1=v1&k2=v2

知识点:

chrome-> ???Form Data(&连接): ???????phone=861513125555&password=12312312312&oneMonth=1 ???????????????reqeusts.post( ???????????url=url, ???????????data={ ???????????????phone:123123123123, ???????????????password:asdfasdf ???????????} ???????) ???????Request Payload(json格式): ???????{"BaseRequest":{"Uin":981579400,"Sid":"zWvteTWqBop4heoT","Skey":"@crypt_2ccf8ab9_a710cf413c932e201987599558063c8e","DeviceID":"e358217921593270"},"Msg":{"Type":1,"Content":"test","FromUserName":"@60eef3f2d212721fda0aae891115aa7a","ToUserName":"@@6a5403f510a3192454ed1afebd78ec6033d5057c9038d7b943b201f0a74987d4","LocalID":"15300708105840758","ClientMsgId":"15300708105840758"},"Scene":0} ???????????reqeusts.post( ???????????url=url, ???????????json={ ???????????????phone:123123123123, ???????????????password:asdfasdf ???????????} ???????) ???????如果含有中文 ???????reqeusts.post( ???????????url=url, ???????????data=bytes(json.dumps({ ???????????????phone:123123123123, ???????????????password:asdfasdf ???????????},ensure_ascii=False),encoding=utf-8) ???????)firefox: ???表单数据: ???????????JSON:
知识点

序列化:

# -*- coding: utf-8 -*-"""@Datetime: 2019/1/5@Author: Zhang Yafei"""""""示例一: ????requests.post( ???????????url=msg_url, ???????????json= { ???????????????‘k1‘:‘v1‘, ???????????????‘k2‘:‘垃圾‘ ???????????} ???????) ???json.dumps() ????-> ?unicode 示例二: ????requests.post( ???????????url=msg_url, ???????????data= json.dumps({ ???????????????‘k1‘:‘v1‘, ???????????????‘k2‘:‘垃圾‘ ???????????},ensure_ascii=False) ???????) ???json.dumps() ????-> ?unicode 示例二: ????requests.post( ???????????url=msg_url, ???????????data= bytes(json.dumps({ ???????????????‘k1‘:‘v1‘, ???????????????‘k2‘:‘垃圾‘ ???????????},ensure_ascii=False),encoding=‘utf-8‘) ???????) ???json.dumps() ????-> ?unicode """import jsondata_dict = {‘username‘:‘张亚飞‘, ‘password‘:‘12132313213‘}result = json.dumps(data_dict)result2 = json.dumps(data_dict, ensure_ascii=False)result3 = bytes(json.dumps(data_dict, ensure_ascii=False),encoding=‘utf-8‘)print(result)print(result2)print(result3)# {"username": "\u5f20\u4e9a\u98de", "password": "12132313213"}# {"username": "张亚飞", "password": "12132313213"}# b‘{"
序列化

web请求相关

原文地址:https://www.cnblogs.com/zhangyafei/p/10225977.html

知识推荐

我的编程学习网——分享web前端后端开发技术知识。 垃圾信息处理邮箱 tousu563@163.com 网站地图
icp备案号 闽ICP备2023006418号-8 不良信息举报平台 互联网安全管理备案 Copyright 2023 www.wodecom.cn All Rights Reserved