Technology Blog Posts by SAP
cancel
Showing results for 
Search instead for 
Did you mean: 
ArthurYang
Product and Topic Expert
Product and Topic Expert
1,285

本文档内容是基于我个人对SAP集成套件的理解产生的,阅读时间约为1小时。

 

本文档主要分享集成套件中API管理功能的入门操作


 

本文档包含以下部分:

1.引入真实API

2.创建代理API

3.为代理API添加策略

4.为API准备收费计划(可选)

5.将代理API制作为API Product以供其他用户消费

6.管理API消费者

 

如果您对BTP感兴趣,BTP个人精选内容目录 | SAP Blogs 可能有更多你需要的内容


 

BTP客户在获取BTP账户之后会收到邮件,内包含激活账号方式及自己的全局账号链接

 

1.引入真实API


为背后的API创建API provider,以将前台API与后台真实API解耦

首先如果后台API是基于HTTPS的,先获取该API的证书,可以在浏览器打开该API所属domain网址,点击浏览器上地址栏最左侧的小锁,导出der格式的证书,

ArthurYang_0-1715658632027.png

 

在”Configure-APIs-Certificate”内进行导入


 

然后创建API Provicer,进入”Configure-API Providers-Create”


 

分别填入名字,由于我这里选择的后台API为https://m.maoyan.com,所以命名之后直接填入host参数(不带https://),此处的HTTPS服务所以端口填写443,如果是HTTP服务则填8080端口


 

CatalogService暂时置空,即可保存

 

2.创建代理API


基于API provider来创建一个API,进入Configure-API Proxies-Create(下图为旧版UI)


 

创建API之后,Save,再点击右上角的”…-Deploy”,就可以通过访问这个前台API来连接到后台API了,例如访问https://int905.apimanagement.cn40.apps.platform.sapcloud.cn/v1/basePath/ajax/movieOnInfoList,就会返回https://m.maoyan.com/ajax/movieOnInfoList的结果


 

但是这只是进行了转发,还没有添加其他能力

 

3.为代理API添加策略


点击进入刚刚创建的API Proxy内,点击右上角的policy进入策略编辑器来为这个API添加能力


 

首先解释一下界面,策略主要在两个流程中生效,分别是消息从消费者处发送到APIM(及APIM的Response),以及消息从APIM发送到后端真实API流程,我们首先为inbound消息添加一条Spike Arrest信息,来在请求超过一定频率之后停止向后端真实API发送消息,


 

Policy创建完成后会自带一份模板代码,这里修改<Rate>属性即可修改频率限制,默认的30pm代表每分钟最多访问30次,我这里将其修改为2pm后,”Update该策略-Save该API-Deploy部署该API”之后,通过浏览器访问Endpoint即可触发Spike Arrest,停止服务


我们还可以为其添加许多其他的Policy,以及将制作完成的一套Policy转为一套Policy Template用来让其他系统复用,这里就不详细展开了。

 

4.为API准备收费计划


APIM可以统计不同用户对不同API的访问次数,所以可以为API设定费率计划,用以向API消费者收费,进入“Monetize-Create”


 

5.将代理API制作为API Product以供其他用户消费

 

进入Engage-Products-Create


然后在”APIs”这个Tab添加上我们先前创建的API

 

Permission Tab用于配置权限,哪些API消费者能看到哪些API Product,这里我先留空

 

Rateplan内选择先前创建的费率计划(不配置费率计划也可以正常使用)

 

最后点击右上角的Publish,即可将这个包含了一个API的API产品发布出去,开发端的操作到这里就结束了

 

6.管理API消费者


APIM主要在API Business Hub Enterprise为消费者提供API的能力,点击集成套件右上角即可进入


 

实际使用中,首先需要消费者在IDP内注册身份,如果你使用的是阿里云的BTP环境,请通过Link完成用户注册

 

然后由APIM管理员在devPortal为该消费者创建身份,勾选权限,APIM会给该消费者发送邮件


 

该消费者自己打开邮箱,点击链接,登录IDP后,即可点击注册APIM


 

自主注册提交后,管理员会收到邮件,进入APIM管理端,就可以允许注册


 

最后消费者收到确认邮件,登录API Portal,就可以订阅产品,获取到API Key,开始调用接口了

 

关于本文内容有任何问题或见解,欢迎在评论区留下你的想法,如果时间紧迫,也可以直接联系到我 arthuryang1996@foxmail.com,感谢你的时间