【知晓云 API Gateway】API 乐队指挥家,网关服务正式上线

山涛
• 阅读 2873

作者:知晓云 资深工程师 John Deng

【知晓云 API Gateway】API 乐队指挥家,网关服务正式上线

随着知晓云小伙伴们业务的发展,对我们服务的支持又有了新的要求,比如在对接第三方服务时,需要自定义数据结构等。为此,经过 32 次的需求讨论会以及工程师们的紧张开发后,知晓云 API 网关诞生了。你可以通过可视化界面配置 API ,点击发布,即可完成一个对外服务的 API,再也无需等待构建/部署流程,大大节约了开发成本。

知晓云 API 网关(API Gateway),是 API 发布、管理、运维的全生命周期管理工具。让开发者通过可视化界面配置并生成 API 提供给全平台使用,省掉了繁琐的服务开发及部署环节,五分钟即可完成 API 定制开发。

使用 API  网关,还可以让运行在知晓云上的应用数据得以更加灵活地提供给外部系统集成,无需再通过知晓云的 OpenAPI 进行数据转接,使得业务推进速度跃升一个等级。

API 网关的使用场景

1.接收外部系统回调

API 网关会将外部系统的回调内容传递至后端服务(云函数),处理完成后,还可以返回符合外部系统要求的内容。

2.定制 API 接口,自定义返回内容

直接使用知晓数据表相关的 API 时 ,无法对其返回内容进行自定义,更加无法应对涉及多表数据合成为一个对象返回的场景。

使用 API 网关即可在云函数中组装好内容,通过其自定义返回内容的能力,将符合业务的数据格式返回到客户端。

API 网关的执行流程

客户端对 API 发起请求后,由网关进行有效性及路由匹配,将请求转发到后端服务进行业务处理,再把后端服务的内容通过 API 网关返回客户端。

【知晓云 API Gateway】API 乐队指挥家,网关服务正式上线

PS:目前后端服务仅支持云函数。

需要注意:

云函数运行方式为同步,超时时间为 1.5 秒。

由于云函数需要告知 API 网关返回内容,因此云函数必须返回以下数据结构,如不按照这结构返回,API 网关将会响应错误:

{
  "status_code": 200,
  "content-type": "text/plain",
  "content": "hello, world!"
}
  • status_code 为响应请求的状态码。查看参考文档
  • content 为响应内容
  • content-type 为响应内容的类型,支持:

    • text/plain(纯文本)
    • text/html(HTML)
    • application/json(JSON)
    • application/xml(XML)

API 网关的费用

API 网关面向所有版本的用户开放,没有应用版本的限制。仅需对请求数与云函数执行进行付费,API 网关的 API  管理、认证服务、流量控制等所有组件不收取任何费用。

每个对 API 网关的 API 请求会消耗应用一次的 APICall 额度,API 请求对应云函数的执行费用按照已有的云函数计费规则进行收取。

API 网关的特性

API 管理

提供 API 的创建/修改/删除, 除了对 API 进行路径,支持方法的设置外,还可以根据业务场景对 query string / HTTP headers 进行参数规范配置,支持 API 调试。

API 发布

预设「正式环境」/ 「测试环境」,让开发测试与生产服务相互隔离。

API 安全

无论内置域名或自定义域名均提供 SSL 证书,保证 API 的通讯安全,支持选用 JWT 认证服务,避免 API 被恶意使用。

API 流量控制

支持对 API 进行流量控制,精准控制使用情况,保证资源合理使用。

API 监控及调用日志

多维度的监控指标,全面了解 API 的使用情况,保留POST/PUT/ DELETE 等方法的请求日志,给 API 审计提供强力支持。

API 网关的使用

进入「知晓云控制台」,选择「引擎」即可开启使用。

创建 API 网关

选择「API 网关」tab,即可进入管理面板。

【知晓云 API Gateway】API 乐队指挥家,网关服务正式上线

增加路由,绑定云函数

完成 API 网关创建后,在「API 管理」添加 API。

【知晓云 API Gateway】API 乐队指挥家,网关服务正式上线

API 可以根据需求进行认证服务,请求参数等的前端配置,按需选择。

【知晓云 API Gateway】API 乐队指挥家,网关服务正式上线

完成前端配置后,再进行后端云函数的配置,给正式/测试环境配置相对应的云函数。

点击「新增云函数」会在新开的标签页中实现云函数的创建,完成后,点击刷新按钮即可选择。

【知晓云 API Gateway】API 乐队指挥家,网关服务正式上线

编写云函数

【知晓云 API Gateway】API 乐队指挥家,网关服务正式上线

编写成后,回到原有标签,进行关联操作。

【知晓云 API Gateway】API 乐队指挥家,网关服务正式上线

发布 API 网关

【知晓云 API Gateway】API 乐队指挥家,网关服务正式上线

验证 API 网关

【知晓云 API Gateway】API 乐队指挥家,网关服务正式上线

查看《API 网关使用指南》,立即使用 API Gateway。

关于知晓云 API Gateway 的介绍就讲到这里啦,如果你有其他疑问或需求,可通过文末评论或客服微信(微信号:minsupport3)告诉我们,我们将一一为你解答。

推荐阅读
点赞
收藏
评论区
推荐文章
blmius blmius
3年前
MySQL:[Err] 1292 - Incorrect datetime value: ‘0000-00-00 00:00:00‘ for column ‘CREATE_TIME‘ at row 1
文章目录问题用navicat导入数据时,报错:原因这是因为当前的MySQL不支持datetime为0的情况。解决修改sql\mode:sql\mode:SQLMode定义了MySQL应支持的SQL语法、数据校验等,这样可以更容易地在不同的环境中使用MySQL。全局s
Wesley13 Wesley13
3年前
MySQL部分从库上面因为大量的临时表tmp_table造成慢查询
背景描述Time:20190124T00:08:14.70572408:00User@Host:@Id:Schema:sentrymetaLast_errno:0Killed:0Query_time:0.315758Lock_
美凌格栋栋酱 美凌格栋栋酱
6个月前
Oracle 分组与拼接字符串同时使用
SELECTT.,ROWNUMIDFROM(SELECTT.EMPLID,T.NAME,T.BU,T.REALDEPART,T.FORMATDATE,SUM(T.S0)S0,MAX(UPDATETIME)CREATETIME,LISTAGG(TOCHAR(
皕杰报表之UUID
​在我们用皕杰报表工具设计填报报表时,如何在新增行里自动增加id呢?能新增整数排序id吗?目前可以在新增行里自动增加id,但只能用uuid函数增加UUID编码,不能新增整数排序id。uuid函数说明:获取一个UUID,可以在填报表中用来创建数据ID语法:uuid()或uuid(sep)参数说明:sep布尔值,生成的uuid中是否包含分隔符'',缺省为
Peter20 Peter20
4年前
mysql中like用法
like的通配符有两种%(百分号):代表零个、一个或者多个字符。\(下划线):代表一个数字或者字符。1\.name以"李"开头wherenamelike'李%'2\.name中包含"云",“云”可以在任何位置wherenamelike'%云%'3\.第二个和第三个字符是0的值wheresalarylike'\00%'4\
Wesley13 Wesley13
3年前
FLV文件格式
1.        FLV文件对齐方式FLV文件以大端对齐方式存放多字节整型。如存放数字无符号16位的数字300(0x012C),那么在FLV文件中存放的顺序是:|0x01|0x2C|。如果是无符号32位数字300(0x0000012C),那么在FLV文件中的存放顺序是:|0x00|0x00|0x00|0x01|0x2C。2.  
Wesley13 Wesley13
3年前
mysql设置时区
mysql设置时区mysql\_query("SETtime\_zone'8:00'")ordie('时区设置失败,请联系管理员!');中国在东8区所以加8方法二:selectcount(user\_id)asdevice,CONVERT\_TZ(FROM\_UNIXTIME(reg\_time),'08:00','0
Wesley13 Wesley13
3年前
PHP创建多级树型结构
<!lang:php<?php$areaarray(array('id'1,'pid'0,'name''中国'),array('id'5,'pid'0,'name''美国'),array('id'2,'pid'1,'name''吉林'),array('id'4,'pid'2,'n
Wesley13 Wesley13
3年前
Java日期时间API系列36
  十二时辰,古代劳动人民把一昼夜划分成十二个时段,每一个时段叫一个时辰。二十四小时和十二时辰对照表:时辰时间24时制子时深夜11:00凌晨01:0023:0001:00丑时上午01:00上午03:0001:0003:00寅时上午03:00上午0
Wesley13 Wesley13
3年前
00:Java简单了解
浅谈Java之概述Java是SUN(StanfordUniversityNetwork),斯坦福大学网络公司)1995年推出的一门高级编程语言。Java是一种面向Internet的编程语言。随着Java技术在web方面的不断成熟,已经成为Web应用程序的首选开发语言。Java是简单易学,完全面向对象,安全可靠,与平台无关的编程语言。
Python进阶者 Python进阶者
1年前
Excel中这日期老是出来00:00:00,怎么用Pandas把这个去除
大家好,我是皮皮。一、前言前几天在Python白银交流群【上海新年人】问了一个Pandas数据筛选的问题。问题如下:这日期老是出来00:00:00,怎么把这个去除。二、实现过程后来【论草莓如何成为冻干莓】给了一个思路和代码如下:pd.toexcel之前把这