nodejs学习计划--(八)Api接口

API接口

1.简介

1. 接口是什么

接口是 前后端通信的桥梁
简单理解:一个接口就是 服务中的一个路由规则 ,根据请求响应结果
接口的英文单词是 API (Application Program Interface),所以有时也称之为 API 接口
这里的接口指的是『数据接口』, 与编程语言(JavaGo 等)中的接口语法不同

2. 接口的作用

实现 前后端通信
在这里插入图片描述

3. 接口的开发与调用

大多数接口都是由 后端工程师 开发的, 开发语言不限
一般情况下接口都是由 前端工程师 调用的,但有时 后端工程师也会调用接口 ,比如短信接口,支付接口

4. 接口的组成

一个接口一般由如下几个部分组成:

  • 请求方法
  • 接口地址(URL
  • 请求参数
  • 响应结果

一个接口示例 https://www.free-api.com/doc/325

在这里插入图片描述

体验一下:https://api.asilu.com/idcard/?id=371522199111299668

2、RESTful API

RESTful API 是一种特殊风格的接口,主要特点有如下几个:

  • URL 中的路径表示 资源 ,路径中不能有 动词 ,例如 create , delete , update 等这些都不能有
  • 操作资源要与 HTTP 请求方法 对应
  • 操作结果要与 HTTP 响应状态码 对应

规则示例:

操作 请求类型 URL 返回
新增歌曲 POST /song 返回新生成的歌曲信息
删除歌曲 DELETE /song/10 返回一个空文档
修改歌曲 PUT /song/10 返回更新后的歌曲信息
修改歌曲 PATCH /song/10 返回更新后的歌曲信息
获取所有歌曲 GET /song 返回歌曲列表数组
获取单个歌曲 GET /song/10 返回单个歌曲信息

扩展阅读:https://www.ruanyifeng.com/blog/2014/05/restful_api.html

3. json-server

json-server 本身是一个 JS 编写的工具包,可以快速搭建 RESTful API 服务
官方地址: https://github.com/typicode/json-server
操作步骤:

  1. 全局安装 json-server
npm i -g json-server
  1. 创建 JSON 文件(db.json),编写基本结构
{
  "song": [
    { "id": 1, "name": "干杯", "singer": "五月天" },
    { "id": 2, "name": "当", "singer": "动力火车" },
    { "id": 3, "name": "不能说的秘密", "singer": "周杰伦" }
  ]
}
  1. JSON 文件所在文件夹作为工作目录 ,执行如下命令
json-server --watch db.json

默认监听端口为 3000

4.接口测试工具

介绍几个接口测试工具

API接口示例

相关推荐

  1. nodejs学习计划--(二)fs文件系统和path模块

    2024-02-07 07:56:01       49 阅读
  2. Node.js身份证实名认证接口、身份证识别API

    2024-02-07 07:56:01       28 阅读

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-02-07 07:56:01       94 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-02-07 07:56:01       100 阅读
  3. 在Django里面运行非项目文件

    2024-02-07 07:56:01       82 阅读
  4. Python语言-面向对象

    2024-02-07 07:56:01       91 阅读

热门阅读

  1. MIT-Missing Semester_Topic 6:Version Control (Git) 练习题

    2024-02-07 07:56:01       50 阅读
  2. ES鉴权设计以及相关探讨

    2024-02-07 07:56:01       55 阅读
  3. MogaNet:高效的多阶门控聚合网络

    2024-02-07 07:56:01       43 阅读
  4. 容器库(4)-std::forward_list

    2024-02-07 07:56:01       45 阅读
  5. linux系统非关系型数据库redis

    2024-02-07 07:56:01       54 阅读
  6. 深度学习:人工智能的新篇章

    2024-02-07 07:56:01       51 阅读
  7. Rust语言基础语法

    2024-02-07 07:56:01       60 阅读
  8. .NET Core 3 foreach中取索引index

    2024-02-07 07:56:01       47 阅读
  9. spring boot学习第十一篇:发邮件

    2024-02-07 07:56:01       45 阅读
  10. 2.6学习总结10

    2024-02-07 07:56:01       50 阅读
  11. 算法——C/动态规划

    2024-02-07 07:56:01       52 阅读
  12. openssl3.2 - update debian12‘s default openssl to openssl3.2

    2024-02-07 07:56:01       52 阅读