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

Restful风格接口开发

目录

Restful

Apifox

介绍

端口号8080怎么来的?

为什么要使用Apifox?


Restful

如果请求方式是Post,那我就知道了要执行新增操作,要新增一个用户

如果请求方式是Put,那就代表我要修改用户

具体要对这些资源进行什么样的操作,传统的Url通过动词来描述,但Restful风格的Url通过请求方式来描述,由于请求方式是固定的,get是查询,Delete是删除,Post是新增,Put是修改,分别对应于增删改查的四项操作

所以Restful风格的url中有两大特点

第一大特点就是通过Url来定位要操作的资源

/user/1那我就知道我要操作的是一号用户的信息,具体对这个用户进行什么样的操作由请求方式决定

所以Restful风格的url第二大特点就是通过HTTP动词来描述操作,而这块说的HTTP动词指的就是请求方式,通过请求方式就知道到底是对增删改查进行的哪项操作

  • REST是风格,是约定方式,约定不是规定,可以打破

  • 描述模块的功能通常使用复数,也就是加s的格式来描述,表示此类资源,而非单个资源。如:users、emps、books…

Apifox

将来前端和后端都是并行开发的,假设我们后端工程师已经将对应的功能接口都已经开发完毕了,我如何对服务器端的功能接口进行测试

在前端开发过程中,如果服务器端还没有开发好,那前端如何来获取数据来测试页面渲染展示呢?

其实要解决这两个问题,我们只需要借助一个工具就可以了

介绍

API三大功能

第一大功能,可以管理我们项目中的接口文档

第二大功能,也可以基于Apifox来测试我们服务器端所开发的功能接口,也就是接口的请求测试

第三大功能,还可以对前端去提供对应的Mock服务,Mock服务就是为前端提供的模拟的url地址,你访问这个模拟的url地址,我就会对你返回对应的测试数据来供前端测试调试使用的

安装完Apifox之后扫码登录,在主窗口新建项目,这样就新建了一个项目

点击快捷请求,之后要输入一个url地址,这个url就是用来指定你要访问哪个功能接口,在前面选择对应的请求方式

输入http://localhost:8080/hello?name=Tom

端口号8080怎么来的?

后端服务(例如 Spring Boot 应用)在启动时会监听一个特定的端口用于接收 HTTP 请求

端口号 8080 是后端服务配置中指定的,前端或工具(如 Apifox)需要根据后端的实际运行端口来发送请求

在许多 Java Web 框架(如 Spring Boot)中,默认的 HTTP 端口号是 8080

如果开发者没有显式地配置端口号,框架会使用默认值 8080

开发者可以通过配置文件(如 application.properties 或 application.yml)手动设置端口号

通过 application.yml 配置端口

server:port: 8080

如果将 server.port 设置为其他值(如 9090),则后端服务会在该端口上运行,URL 也会变成:

http://localhost:9090/hello?name=Tom

Body代表的是请求体中返回的内容

Header展示的是响应头的信息

实际请求中展示了这次请求的相关信息,请求的url地址,请求的方式,以及传递的请求头

为什么要使用Apifox?

由于浏览器地址发起的请求都是GET方式的请求,如果我们需要发起POST,PUT,DELETE方式的请求,就需要借助于这类工具

接口开发

我们接下来在开发每一个功能的时候,首先要先打开页面原型去明确需求,然后再去接口文档去进行功能接口的开发,功能开发好了再进行测试,再进行联调

在接口文档中最基本的三项信息

第一个就是这个接口的基本描述

首先这块有个请求路径,这代表的是将来在请求这个接口的时候,前端的请求路径是什么

当然前面并没有写协议,IP地址,端口号那部分,主要写的是资源的访问路径,资源的访问路径为/depts

由于是查询方式,所以请求方式是GET

下面就有这块接口的描述,是用来查询部分列表数据的

第二个就是请求参数的信息

那由于是查询全部,并没有请求参数,这里可以看到请求参数这里是无,也就是说你在访问这个路径的时候是不需要携带任何参数的

第三个就是相应参数的信息

响应格式是:application/json

就代表这是一个json格式的数据,最终需要给前端响应json格式的数据

下面有响应数据的样例

那响应回去的数据就是一个标准的统一响应结果,第一项code就代表是否操作成功,那为1就代表操作成功,为0就代表操作失败

接下来第二项msg就代表提示信息,如果成功的话,那我们最终返回的就是一个默认的succes,如果失败因为什么原因失败,我们需要给前端响应回去

第三项信息是data,data就代表我们要给前端返回的数据,如果是增删改通常来说我们是不需要给前端返回数据的,data返回Null就可以了,如果是查询,查询是需要返回数据的,在data里面就是查询返回的结果,由于查询的是全部的部门,那在Json格式的数据中,如果是一个数组或者List集合,那么这个时候外层是一个中括号,这代表的是一个json格式的数组,里面是一层一层的大括号,大括号代表的是一个一个的对象,里面封装的就是一个一个部门的信息


http://www.mrgr.cn/news/98248.html

相关文章:

  • C语言斐波那契数列的多样实现
  • OpenHarmony5.0.2 USB摄像头适配
  • Java面向对象核心:多态、抽象类与接口实战解析
  • 基于51单片机的正负5V数字电压表( proteus仿真+程序+设计报告+讲解视频)
  • c语言 open函数
  • C语言中冒泡排序和快速排序的区别
  • 02核心-EffectSpec,EffectContext
  • Excel表格文件分组归并——通过sql
  • Sklearn入门之datasets的基本用法
  • Android Studio 在 Windows 上的完整安装与使用指南
  • 八大定位UI
  • 从宇树摇操avp_teleoperate到unitree_IL_lerobot:如何基于宇树人形进行二次开发(含Open-TeleVision源码解析)
  • 【HD-RK3576-PI】系统更新与恢复
  • CSI-PVController-claimWorker
  • Linux上位机开发实践(OpenCV算法硬件加速)
  • 【redis进阶三】分布式系统之主从复制结构(1)
  • 【复旦微FM33 MCU 底层开发指南】高级定时器ATIM
  • NoSQL入门指南:Redis与MongoDB的Java实战
  • 2025蓝桥杯python A组题解
  • 数据库事务管理:ACID特性与隔离级别的深度解读