创建一个 API | 学习笔记

本文涉及的产品
.cn 域名,1个 12个月
简介: 简介:快速学习创建一个 API

开发者学堂课程【阿里云 API 网关使用教程:创建一个 API】学习笔记,与课程紧密联系,让用户快速学习知识。

课程地址:https://developer.aliyun.com/learning/course/406/detail/5236


创建一个 API

内容简介

一、API 的创建过程

二、基本信息内容


一、API 的创建过程

在 API 官网创建一个 API ,多是情况下是多个 API 协调来完成一个功能,在 API 的概念之上,我们还有一个 API 分组的概念,在 API 官网要录入一个 API首先要创建一个 API 分组

在控制台进入分组管理,创建分组(输入分组名称并简述下名字和描述)

image.png

出现下面提示就表示分组创建成功。(二级域名后面会对域名进行讲解)

image.png

接下来创建 API点击 API 列表的这个页面,进入 API 管理的页面,点击创建 API 会出现我们选好了默认分组

API,大概四个步骤

第一个就是基本信息,基本信息就是接口名称,简单的描述

第二个就是 API 请求一般习惯说是前段定义,就是从客户端到API网关这一段的请求结构的定义

第三步是定义 API 的服务一般说成是后端服务,就是指的是网关到明后端就是服务的那个请求结构

第四步就是定义返回结果。

image.png

基本信息描述

以查询天气数据的为例,输入 API 名称,然后选取安全认证的方式,阿里云提供了三种认证方式,这三种认证方式后面也会有详细的专门的视频来说关于认证的类型是公开描述,这样基本信息创建完成,下面就进入下一步,

image.png


二、基本信息内容

定义 API 请求

用户发起请求到网关的这一部分的请求结构,下面首先选的是他的协议,一般是支持 http 或者是 httpps在这选成两个都支持,然后自定义域名和二级域名(我们后面会有专门的视频来说域名)。

请求 Path

从用户到网关这一段儿请求结构里的 Path ,如果 Path 中有这个参数的话,就是说你的 Path 是带这样的动态参数的话,比如说我们叫 Path ,这里边参数也是可以的,(如果报错,可以先不用管在下边配入参定义中把他对应上,这样就不会再报错了)。

定义 Method 。

开始入参的定义,用户请求的时候需要输入的参数,首先针对上面的错误进行配参类型不支持文件类型的,其余都可以用字符流的形式解决。

描述简单写一下,编辑更多是对这个参数的一些校验,比如说我们之前写了这个参数是 int 的类型,那个相应的就比如说一些枚举值的设置,随后他的最大值最小值都会设置。

这个请求到网关时候,网关就会先按照你配置的规则来对进行交验了,如果不符合规则的话,会直接打回去,这样的话就会避免很多这种无效的请求,把这个后端的资源消耗掉

image.png

除了 Path 的查询外还应该有其他的查询。

image.png

后端服务地址注意格式的演示,可是IP加一个端口也可是一个域名。

后端请求的 path 和前端的一样,可以和前端不一致网关支持映射。Method 也支持映射。

后端超时:是在配置的这个时间之内,然后网关会等待以后的那响应,比如说配置各3300万毫秒,那么他就是30秒就说会等待30秒

如果在30秒之内后端的响应网关会报超时的这个错误了,所以一开始的时候可以把这个值设大一点,最大支持30秒后边进行调整等到稳定时再进行缩短。

Mock 先不使用,如果把他设置成 Mock 的时候,他实际请求就永远调不到后端,就是配置一个 Mock 的结果,然后他就永远只返回这几个字

后端服务参数配置,主要是对前端参数的一个映射,可以看右边部分,他其实是已经把前端的都已经拉过来了

image.png

常量参数和系统参数

常量参数就是比如的后端一直要接收某一个常量,但是这个常量你又不想让调用的用户看的,那么你就在这加一个常量参数,那么这个网关那再接收到请求的时候,会把这个参数加上,传递到的后端,但是对用户来说,这个常量参数是不可见的

image.png

系统参数是网关这边能够接收到的一些数据,但是后端可能没有定义的,然后比如说像请求的这个客户端的 IP 或者域名等。

image.png

最后是返回结果的定义,首先定义一下返回类型,支持 JSON、文本、二进制、XML、HTML 这几种类型。

下面是返回结果示例和失败返回结果示例。

错误码定义是为了生成文档,可在这添加说明让使用者知道错误码。

image.png

相关文章
|
3月前
|
人工智能 监控 安全
F5社区学习笔记:API和AI如何改变应用安全?
F5社区学习笔记:API和AI如何改变应用安全?
49 1
|
3月前
|
jenkins API 持续交付
jenkins学习笔记之十五:SonarSQube API使用
jenkins学习笔记之十五:SonarSQube API使用
|
6月前
|
XML API 数据格式
【Qt 学习笔记】QWidget的enable属性 | API的介绍
【Qt 学习笔记】QWidget的enable属性 | API的介绍
179 0
|
前端开发 API
前端学习笔记202305学习笔记第二十二天-学生列表api封装1
前端学习笔记202305学习笔记第二十二天-学生列表api封装1
45 0
|
API
java202304java学习笔记第六十六天-ssm-mybatis-相应api之1
java202304java学习笔记第六十六天-ssm-mybatis-相应api之1
59 0
|
前端开发 API
前端学习笔记202305学习笔记第二十二天-学生列表api封装2
前端学习笔记202305学习笔记第二十二天-学生列表api封装2
57 1
|
前端开发 API
前端学习笔记202305学习笔记第二十二天-新增修改api的封装2
前端学习笔记202305学习笔记第二十二天-新增修改api的封装2
65 0
前端学习笔记202305学习笔记第二十二天-新增修改api的封装2
|
前端开发 API
前端学习笔记202305学习笔记第三十天-什么是mvc-c层api 前后端联动1
前端学习笔记202305学习笔记第三十天-什么是mvc-c层api 前后端联动1
73 0
|
前端开发 API
前端学习笔记202305学习笔记第三十一天-什么是mvc-c层api 前后端联动3
前端学习笔记202305学习笔记第三十一天-什么是mvc-c层api 前后端联动3
55 0
|
前端开发 API
前端学习笔记202305学习笔记第三十一天-什么是mvc-c层api 和mvc总结3
前端学习笔记202305学习笔记第三十一天-什么是mvc-c层api 和mvc总结3
46 0
下一篇
无影云桌面