浅谈python3发送post请求参数为空的情况


Posted in Python onDecember 28, 2018

post请求的时候如果不带参数,其实作用就跟get请求一样。我们在做接口测试的时候,发现开发就全部使用的post,get的作用就被这样的post空参数请求给替代了。

在Python代码请求,如下:

class HttpHelper():
 
 def __init__(self):
  '''获取driver对象,和接口ip地址信息,里面的方法大家可以忽略,根据自己的情况来设置
  '''
  self.dr=Common.driver
  run_info=Common().get_current_run_config()
  app_info=Common().get_app_config()[run_info['_envir']]
  self.ip=app_info['url'].split('/')[2]
 
 def post(self,module,interface_name,post_para={}):
  '''arg: module 模块名
    interface_name 接口名称
    post_para  请求参数,默认是空字典,如果不填这个参数就是post请求参数为空的情况
  '''
  inter_info=Common().get_interface_info()[module]
  url='http://'+self.ip+inter_info[interface_name]['url']
  Common().logger_info("request - api - "+url)
  
  postdata = bytes(urllib.parse.urlencode(post_para), encoding='utf8') 
  Common().logger_info("request - arg - "+str(post_para))
  _jid=Common().get_jsessionid(self.dr) #获取sessionid,这个方法是通过selenium的get_cookie方法来获取sessionid,大家可以参考我其他的文章
  header={
   'Accept':'application/json, text/plain, */*',
   'Connection': 'keep-alive',
   'Content-Type':'application/x-www-form-urlencoded',
   'Cookie':'JSESSIONID='+_jid+'',
   'Host': ''+self.ip+'',
   'Origin': 'http://'+self.ip+''
   }
  Common().logger_info("[header] - "+str(header))
  try:
   req=urllib.request.Request(url,postdata,header)
   with urllib.request.urlopen(req) as resp:
    response=resp.read().decode('utf-8')
    response=json.loads(response)
    Common().logger_info('response - '+str(response))
    if response['data']!='':
     Common().logger_info('http post success!!!')
    return response
  except Exception as e:
   Common().logger_error(str(e))

代码里的Common().logger_***是我们项目的日志方法,输出一些执行日志,大家可以忽略。

以上这篇浅谈python3发送post请求参数为空的情况就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python在windows下实现备份程序实例
Jul 04 Python
Python入门篇之列表和元组
Oct 17 Python
用Python编写一个基于终端的实现翻译的脚本
Apr 24 Python
django通过ajax发起请求返回JSON格式数据的方法
Jun 04 Python
Python使用poplib模块和smtplib模块收发电子邮件的教程
Jul 02 Python
Django的分页器实例(paginator)
Dec 01 Python
python基础教程项目四之新闻聚合
Apr 02 Python
Python基础教程之异常详解
Jan 10 Python
Python 仅获取响应头, 不获取实体的实例
Aug 21 Python
python 图像的离散傅立叶变换实例
Jan 02 Python
python第三方库学习笔记
Feb 07 Python
Python 使用dict实现switch的操作
Apr 07 Python
python3使用flask编写注册post接口的方法
Dec 28 #Python
python通过tcp发送xml报文的方法
Dec 28 #Python
对python 生成拼接xml报文的示例详解
Dec 28 #Python
Python 3.x基于Xml数据的Http请求方法
Dec 28 #Python
python模拟登陆,用session维持回话的实例
Dec 27 #Python
python requests post多层字典的方法
Dec 27 #Python
解决python3运行selenium下HTMLTestRunner报错的问题
Dec 27 #Python
You might like
PHP数组遍历知识汇总(包含遍历方法、数组指针操作函数、数组遍历测速)
2014/07/05 PHP
javascript web对话框与弹出窗口
2009/02/22 Javascript
JavaScript.Encode手动解码技巧
2010/07/14 Javascript
js控制页面控件隐藏显示的两种方法介绍
2013/10/09 Javascript
javascript框架设计读书笔记之数组的扩展与修复
2014/12/02 Javascript
jQuery插件制作之参数用法实例分析
2015/06/01 Javascript
JS实现双击编辑可修改状态的方法
2015/08/14 Javascript
手机端图片缩放旋转全屏查看PhotoSwipe.js插件实现
2016/08/25 Javascript
D3.js封装文本实现自动换行和旋转平移等功能
2016/10/14 Javascript
微信小程序 后台https域名绑定和免费的https证书申请详解
2016/11/10 Javascript
JS请求servlet功能示例
2017/06/01 Javascript
对于js垃圾回收机制的理解
2017/09/14 Javascript
JS实现十字坐标跟随鼠标效果
2017/12/25 Javascript
使用express+multer实现node中的图片上传功能
2018/02/02 Javascript
JS加密插件CryptoJS实现的Base64加密示例
2020/08/16 Javascript
JavaScript前端开发时数值运算的小技巧
2020/07/28 Javascript
浅析JavaScript 函数柯里化
2020/09/08 Javascript
Django视图之ORM数据库查询操作API的实例
2017/10/27 Python
Python中list查询及所需时间计算操作示例
2018/06/21 Python
python 正确保留多位小数的实例
2018/07/16 Python
windows下numpy下载与安装图文教程
2019/04/02 Python
Python Web程序搭建简单的Web服务器
2019/07/31 Python
python子线程退出及线程退出控制的代码
2019/10/16 Python
50行Python代码实现视频中物体颜色识别和跟踪(必须以红色为例)
2019/11/20 Python
python实现图片插入文字
2019/11/26 Python
HTML5中form如何关闭自动完成功能的方法
2018/07/02 HTML / CSS
sleep()方法和wait()方法的区别是什么
2012/11/17 面试题
计算机毕业大学生推荐信
2013/12/01 职场文书
高一家长会邀请函
2014/01/12 职场文书
简历的自我评价范文
2014/02/04 职场文书
法语专业求职信
2014/07/20 职场文书
第二批党的群众路线教育实践活动个人整改方案
2014/10/31 职场文书
前台文员岗位职责
2015/02/04 职场文书
机关保密工作承诺书
2015/05/04 职场文书
太空授课观后感
2015/06/17 职场文书
你需要掌握的20个Python常用技巧
2022/02/28 Python