什么是 HTTP API 接口

Posted on Wed, 25 Dec 2024 10:35:00 +0800 by LiangMingJian


概述

先看下面的这张图,从左到右表示:用户通过电脑 A 控制一个电灯的开关,电灯的开关状态关联着两个 URL 链接,其中:

  • http://127.0.0.1:8080/light?opt=open 表示电灯开。
  • http://127.0.0.1:8080/light?opt=close 表示电灯关。

在这里,我们一般称上述的两个 URL 链接是一个 HTTP 接口,简称接口,又或者 API(Application Programming Interface,应用程序编程接口)。

显然,一个接口的功能就是设计一套规则,让不同系统间能相互沟通,最终可以让不同系统间进行控制,完成所需的功能(比如这里的电脑系统通过接口去控制灯光系统)。

本文的接口 API 只考虑 HTTP 接口,即通过网络 Web 调用的接口,也就是我们通常使用浏览器访问网页时使用到的接口。

HTTP 接口的结构

在 HTTP API 中,一个 URL 就是一个接口,比如下面的这张图,一个基本的接口 URL 链接应当包括下面的部分:

  • 请求协议:如 http,https — HTTP 协议,ftp — 文件传输协议,ws — WebSocket 协议。
  • 请求 IP:提供接口服务的系统 IP 地址。
  • 请求端口:默认是 80,如果不是,则需要填写端口号。
  • 接口路径:指示系统提供的接口在什么位置,一般用来表示功能名称。
  • 接口参数:在接口路径后面使用 ? 来表示路径地址完毕,后面再填写的就是参数,参数使用 键=值 的格式填写,使用 & 来分隔多个参数。
  • 参数值: 接口参数的值。

上述所示的是一个接口应当具备的内容,但实际应用时,一个接口根据其请求方式的不同,往往还要携带一些更多的参数。

比如:请求头,请求体(正文)。

进行接口测试前的准备

要完成接口测试,首先需要开发提供接口文档,接口文档应当包括以下的内容:

  • 被测接口的地址
  • 接口参数,以及各个参数的说明
  • 必要的请求头和请求体
  • 接口响应的值(返回值),以及各个返回值的说明
  • 接口的功能说明

如何进行接口测试

接口测试的进行一般遵循以下的步骤:

  • 从接口文档获取接口的地址。
  • 确认接口的请求方式,请求参数,响应等内容。
  • 构造接口请求(通过 Python,Postman,Apifox 等工具)。
  • 查看返回结果,然后和接口文档比对,进行断言,检查对错。
  • 考虑多种异常的情况,如参数异常,请求方式异常,请求路径异常等,进行全方面的测试。