当前位置: 首页 > news >正文

软件测试基础知识(网络协议)

1.除了http协议接口还知道哪些?

绝大部分的接口都是基于http协议,除此之外还有一些常见的比如webservice接口基于soap协议等等,ICE协议,dubbo协议。

2.http跟https区别

  • https比http更加安全,传输数据进行加密传输。
  • http的端口号为80,https的端口号为443.
  • http无需证书,https需要CA机构颁发的SSL证书。
  • http工作于应用层,https工作于传输层。

3.cookie,session,token机制

因为http协议是无连接,无状态的。简单来说就是为了节省服务器资源,客户端和服务端无法保持长时间连接,所以服务端无法记住该用户的状态。所以引入了鉴权机制。

用户在第一次登陆时,服务器会生成cookies给客户端,第二次登录时客户端会带着之前的cookies来访问,这样服务端就可以判断是哪一个用户。

session是保存在服务端的,当用户登录时会生成session id保存在数据库,下次用户登录就可以识别该session进行判断是哪个用户。

token是另一种鉴权机制,就是身份证,跟cookies类似是由服务端生成token给到客户端,下次登陆时或者调其他接口带上该token就可以判断出是哪一个用户。

实际工作用法场景:

登陆时接口会生成一个cookie或者token,加购下单时把这个值传入请求头就可以访问成功。

4.接口请求的几种方式?

基于http协议的接口请求有八种方式分别为
GET,POST,PUT,head,DELETE,options,trace,connect。

5.get跟post请求有什么区别

  • get方式主要是将参数拼接到url上进行请求。post是将数据放到body里面进行请求。
  • 因为请求方式的不同所以post比get更加安全,然而并不是,post请求只需要抓包一样可以看到参数,真正安全的话是需要进行加密请求。
  • get方式提交的数据有1024字节限制,post无限制。
  • get主要是从服务器上获取数据,post用户提交数据,一般根据业务进行定义。

6.常见返回状态码

状态码主要是服务器返回的状态,根据状态码的不同就可以大概猜到是什么错误,主要有以下这些:

200代表成功

404代表url请求错误

401代表权限认证比如token问题

500代表服务器错误

3百多代表重定向

1XX:提示信息,表示请求已经接收,继续处理。

2XX:成功,表示请求已经被成功接收,理解,接受。

3XX:重定向,要完成请求必须进行更进一步的操作。

4XX:找不到资源,一般是url错误,或者接口未发布等。

5XX:服务器错误,因为代码逻辑或者服务器资源导致的错误。

http://www.dtcms.com/a/392436.html

相关文章:

  • 手机中的轻量化 AI 算法:智能生活的幕后英雄
  • wo店模式兴起旧模式式微:本地生活服务市场的深度变革
  • 服务器磁盘空间满了怎么办?阿里云ECS清理与云盘扩容教程
  • OpenAI推出更擅长AI代理编码的GPT-5-Codex,与Claude code有何区别?国内怎么使用到Codex呢?
  • GPT-5 深度测试报告:前端编程能力专项评估
  • AIGC发展:从GPT-1到GPT-4的技术演进与行业革新
  • 从AI生成到学术表达:如何有效降低AI率,实现论文合规化写作
  • 【国二】C语言选择题精华速记
  • 聊聊和AutoDL的故事
  • 【状态机实现】前置——设计模式中的孪生兄弟(状态模式和策略模式)
  • 【LeetCode - 每日1题】设计路由器
  • springboot宠物领养救助平台的开发与设计(代码+数据库+LW)
  • CSS的三大特性
  • 实现excel的树形导出
  • 基于Matlab的GPS/北斗系统抗脉冲与窄带干扰算法研究及仿真验证
  • linux之负载均衡Nginx+多开Tomcat
  • 浏览器私有前缀、CSS3:2D转换、动画、3D转换
  • Redis核心面试知识点汇总
  • Java面试宝典:核心基础知识精讲
  • Python9-逻辑回归-决策树
  • 神经网络核心机制深度解析:链式法则驱动下的梯度流动与参数优化
  • Spring事务和事务传播机制(半)
  • 61.[前端开发-Vue3]Day03-购物车-v-model-组件化-Vue脚手架
  • Kafka学习笔记(p1-p14)
  • C++:四大智能指针
  • Roo Code 键盘导航与快捷键
  • SQL从入门到起飞:完整学习数据库与100+练习题
  • MyBatis 动态 SQL 详解:优雅处理复杂查询场景
  • 如何看待Qt中的QObject这个类
  • utf8mb4_bin 与 utf8mb4_generate_cli区别