本博客描述了使用SAP云平台API管理的动态路由用例。
动态路由有助于为APIProxy定义多个目标端点,并设置在运行时选择目标端点的条件
该用例是创建一个API代理,该代理将在运行时路由到不同的目标端点,具体取决于定义的条件。
我们将创建一个APIProxy并定义以下两个目标端点:
https://sapes5.sapdevcenter.com/sap/opu/odata/IWFND/CATALOGSERVICEhttps://services.odata.org/V2/odata/odata.svc/
第一步是启动APIPortal,使用上述任意一个URL创建一个APIProxy作为目标端点
下载新创建的APIProxy定义目标端点并设置条件
有一个父文件夹APIProxy,风控大数据,其文件夹结构如下:
打开文件夹APITargetEndPoint定义目标端点
将有一个名为默认.xml, 删除默认.xml文件
定义目标端点并在APITargetEndPoint文件夹中添加目标端点定义文件
让我们定义类别.xml击中目标端点https://services.odata.org/V2/odata/odata.svc/
如上图所示,在类别.xml文件提供目标端点的名称并设置后端URL
同样,买云服务器,定义ServiceCollection.xml文件击中目标端点https://sapes5.sapdevcenter.com/sap/opu/odata/IWFND/CATALOGSERVICE
我们已经定义了TargetEndPoints,现在让我们使用Route Rule添加条件
来定义路由规则打开默认.xmlAPIProxyEndPoint文件夹中存在文件
,永久免费的云服务器,如图所示在上面的截图中,在默认.xml文件提供路由规则名称并设置条件
路由规则类别检查设置条件代理.pathsuffixMatchesPath"/Categories"
当路径后缀为/Categories时,运行时会命中TargetEndPoint Categories中定义的URL
同样,返利宝,定义路由规则ServiceCollection
最后,打开API\U代理_名称.xml(在本例中,APIProxy name是Multiple\u Target\u End)_点.xml)
在targetEndPoints标签中添加已定义的目标端点
即将完成,返利下载,让我们导入修改后的APIProxy zip并在APIPortal中打开APIProxy。
转到"代理端点"选项卡并添加如上图截图所示的路由规则并保存
现在查看动态路由的工作原理,点击带有pathSuffix/Categories的APIProxy URL
响应:
验证响应,让我们用路径后缀/类别命中目标端点(后端URL)
响应:
两个响应都匹配使用多个目标端点成功创建的APIProxy。
同样地用路径后缀/ServiceCollection命中APIProxy和目标端点(对应后端)URL并验证响应