requests库入门02-简单了解HTTP协议
HTTP协议是Hyper Text Transfer Protocol(超文本传输协议)的缩写,是用于从万维网(WWW:World Wide Web )服务器传输超文本到本地浏览器的传送协议。
HTTP协议每次只处理一个请求,服务器处理完客服的请求,并收到客户的应答后,就会断开连接。采用这种方式可以节省传输时间,HTTP协议是无状态的协议。无状态是指协议对于事务处理是没有记忆能力的。也就是后面的请求如果需要前面的信息,则必须把信息重新传一次
HTTP之URL
HTTP使用统一资源标识符(Uniform Resource Identifiers, URI)来传输数据和建立连接。URL是一种特殊类型的URI,包含了用于查找某个资源的足够的信息,URL是URI的一个子类,还有一个子类是URN不过很少用,基本都用URL。具体的api接口地址就是一个个url
请求信息Request
由四部分组成,请求行,请求头部,请求空行,请求体
主要关心请求头和请求体,有时候接口测试的时候需要在请求头中加上一些信息,才能连接接口
请求体就是请求的数据所在。比如登录的时候,请求体里会存着用户名,密码
响应消息Response
由四部分组成:状态行,消息报头,空行,响应正文
状态行:里面有返回的响应状态码,通过相应状态码可以判断操作是否成功
响应正文:也就是服务器返回的数据,通过服务器返回的数据可以判断操作是否成功,比如登录之后,返回登录成功之类的消息
状态码
状态代码由三位数的数字组成,第一个数字代码响应规则,一共五种
1xx:请求一接受,继续处理
2xx:成功—表示请求已成功接收
3xx:重定向—类似网关,要完成请求需要换地址
4xx:客户端错误—请求有语法错误或无法实现
5xx:服务器错误—服务器未能实现合法的请求
常见的比如200通过,404请求地址不存在
请求方法:
HTTP1.1新增了五种方法,一共有八种方法。不过用的最多的还是get和post
get请求一般主要用来查询数据
post请求一般主要用与数据改动
get请求的请求数据是通过?拼接直接显示在url中的,所以不安全
post请求的请求数据是放在表单中提交的,所以比较安全
requests库入门02-简单了解HTTP协议的更多相关文章
- Requests库主要方法解析以及Requests库入门需要掌握的框架
Requests库主要方法解析以及Requests库入门 1.requests.request(method,url,**kwargs) **kwargs:控制访问的参数,均为可选项 params:字 ...
- requests库入门-16-Session和Cookie
分类专栏: Python接口自动化测试之requests库入门 作者 | Anthony_tester ,300w+访问量博主,Oracle测试开发工程师. 地址 | https://blog.csd ...
- requests库入门01-环境安装
最近在项目中写了一个接口自动化测试的脚本,想要写一些文章来一下,方便自己回头来温习,感兴趣的可以跟着看,先写关于requests库的一些基本操作,然后再写整个框架的搭建.使用的是Python3+req ...
- 第一天 Requests库入门
Requests库的get()方法 requests.get(url, params=None, **kwargs) ∙ url : 拟获取页面的url链接 ∙ params : url中的额外参数, ...
- Python 爬虫-Requests库入门
2017-07-25 10:38:30 response = requests.get(url, params=None, **kwargs) url : 拟获取页面的url链接∙ params : ...
- Requests库入门
安装: $ pip install requests Response对象的一些基本属性: Response.status_code 请求的返回状态,正常为200 Response.text 页面的字 ...
- Python Requests库入门——应用实例-百度、360搜索关键词提交
百度的关键词接口: http://www.baidu.com/s?wd=keyword 360的关键词接口: http://www.so.com/s?q=keyword keyword就是需要查找的关 ...
- requests库入门12-文件上传和下载
因为找不到可以演示上传接口,所以只能纯代码了 文件上传 上传文件是在请求中使用files参数,files需要指向一个dict,然后dict里面的键是接口中对应文件名的字段,而值就是打开这个文件读取到内 ...
- requests库入门笔记1
1.使用requests库发送请求,fiddler无法抓到包:使用浏览器请求相同的url,可以抓到包 在请求参数中添加 proxies参数,如下: proxies = { 'http': 'http: ...
随机推荐
- Linux系统CPU相关信息查询
Linux系统CPU相关信息查询 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.lscpu常用参数介绍 1>.查看帮助信息 [root@node105 ~]# lscpu ...
- Hbase学习03
第3章 Hbase数据存储模型与工作组件 Data格式设计的的总体原则是按照需求要求,依据Hbase性能的相关标准规范和文件,并遵循“统一规范.统一数据模型.统一规划集群.分步实施”的原则,注重实际应 ...
- JQuery1.72中二个Bug,formhtml()方法与clone()方法的二个Bug进行重写
//扩展方法$.formhtml,解决firefox中html()方法得不到修改input值后的html代码(function ($) { var oldHTML = $.fn.html; ...
- canvas加载图片需要二次刷新的问题
如题:此问题我也经在百度问问上进行了解答.https://zhidao.baidu.com/question/1048045241465845579.html 好吧,难怪现在百度那么坑人,理论水军专家 ...
- Elasticsearch分片优化
原文地址:https://qbox.io/blog/optimizing-elasticsearch-how-many-shards-per-index 大多数ElasticSearch用户在创建索引 ...
- Linux基础(一)系统api与库函数的关系
1. 系统api与库函数的关系 man 2 open 1.1 open 1.2 read/write 实现cat功能 #include <stdio.h> #include <uni ...
- Spark源码剖析 - SparkContext的初始化(十)_Spark环境更新
12. Spark环境更新 在SparkContext的初始化过程中,可能对其环境造成影响,所以需要更新环境,代码如下: SparkContext初始化过程中,如果设置了spark.jars属性,sp ...
- html去掉滑动条
实例: .week { /*text-align: left;*/ /*display: inline-table;*/ margin: 0 auto; padding: 0; list-style: ...
- Kaldi的交叉熵正则化
xent_regularize, Cross Entropy Regularize nnet3/nnet-discriminative-trainning.cc:109 void NnetDiscri ...
- python练习题1
1.使用while循环打印输入 1 2 3 4 5 6 8 9 10 num = 1 while num <= 10: if num == 7: num = num + 1 continue e ...