API用于WSO2 API管理器



WSO2 API管理器是否有我可以使用的API?就像上面所说的,获取API的列表或其他内容。我听说有一个SOAP API,但我找不到任何关于它的信息。我希望有人已经得到了一些信息。我发现了这个XML文件(下面列出),它可能是我需要的,也可能不是,但当涉及到SOAP时,我完全不知道我需要什么。这是文件内容。这就是WSDL文件的样子吗?

<?xml version="1.0" encoding="UTF-8"?><serviceGroup name="API" successfullyAdded="true">
<service name="API" exposedAllTransports="true" serviceDeployedTime="1347567758279" successfullyAdded="true">
<operation name="getAPI">
<parameter name="AuthorizationAction">/permission/admin/manage/resources/govern/apis/list</parameter>
<module name="addressing" version="4.0" type="engagedModules"/>
<module name="relay" version="4.0" type="engagedModules"/>
</operation>
<operation name="updateAPI">
<parameter name="AuthorizationAction">/permission/admin/manage/resources/govern/apis/add</parameter>
<module name="addressing" version="4.0" type="engagedModules"/>
<module name="relay" version="4.0" type="engagedModules"/>
</operation>
<operation name="getAPIDependencies">
<parameter name="AuthorizationAction">/permission/admin/manage/resources/govern/apis/list</parameter>
<module name="addressing" version="4.0" type="engagedModules"/>
<module name="relay" version="4.0" type="engagedModules"/>
</operation>
<operation name="addAPI">
<parameter name="AuthorizationAction">/permission/admin/manage/resources/govern/apis/add</parameter>
<module name="addressing" version="4.0" type="engagedModules"/>
<module name="relay" version="4.0" type="engagedModules"/>
</operation>
<operation name="getAPIArtifactIDs">
<parameter name="AuthorizationAction">/permission/admin/manage/resources/govern/apis/list</parameter>
<module name="addressing" version="4.0" type="engagedModules"/>
<module name="relay" version="4.0" type="engagedModules"/>
</operation>
<operation name="deleteAPI">
<parameter name="AuthorizationAction">/permission/admin/manage/resources/govern/apis/add</parameter>
<module name="addressing" version="4.0" type="engagedModules"/>
<module name="relay" version="4.0" type="engagedModules"/>
</operation>
<bindings>
<binding name="APISoap12Binding">
<operation name="getAPI"/>
<operation name="updateAPI"/>
<operation name="getAPIDependencies"/>
<operation name="addAPI"/>
<operation name="deleteAPI"/>
<operation name="getAPIArtifactIDs"/>
</binding>
<binding name="APIHttpBinding">
<operation name="getAPI"/>
<operation name="updateAPI"/>
<operation name="getAPIDependencies"/>
<operation name="addAPI"/>
<operation name="deleteAPI"/>
<operation name="getAPIArtifactIDs"/>
</binding>
<binding name="APISoap11Binding">
<operation name="getAPI"/>
<operation name="updateAPI"/>
<operation name="getAPIDependencies"/>
<operation name="addAPI"/>
<operation name="deleteAPI"/>
<operation name="getAPIArtifactIDs"/>
</binding>
</bindings>
<policies/>
<module name="addressing" version="4.0" type="engagedModules"/>
<module name="relay" version="4.0" type="engagedModules"/>
<parameter name="enableMTOM">true</parameter>
<parameter name="adminService">true</parameter>
<parameter name="AuthorizationAction">/permission/admin/login</parameter>
<parameter name="hiddenService">true</parameter>
</service>
</serviceGroup>

是的,有一个使用Jaggery构建的javascript API层,可用于以REST方式使用API管理器相关功能。

目前,您可以在以下位置的两个jaggery应用程序[store/publisher]中找到它们。导航到它,你会注意到"blocks"目录中有几个子目录,这些子目录是根据api管理器相关功能分类的[例如:项目添加、列表、搜索等]。打开重新使用的catogory,会有一个名为"ajax"的子文件夹,因为我们是以ajax方式传递请求的。在其中可以找到jag文件,其中包含可以以REST方式使用的相关API方法。

然而,我们还没有将这个API层从网络应用程序流中分离出来,以使用户更容易找到和使用API,但我们计划在不久的将来将这个API层单独添加到应用程序中。

目前,您所能做的就是去上面提到的位置,找到相关的API方法来消费。举个例子,如果你想在api发布者中使用addAPI方法,你可以导航到该位置的"ajax"子目录"item-add"目录。你会看到一个名为"add.jag"的文件。打开它,确定什么是操作[例如:addAPI],以及处理操作需要传递的请求参数[例如:APIName、版本等]。然后使用REST客户端向API函数发送http请求。[例如:CURL]。例如,在这里,您的http请求将按照以下方式进行。

"http://ip:port/publisher/site/blocks/item-add/ajax/add.jag-d"action=addAPI&name=API1&version=1.0.0.0&description=neneneba API&端点=http://search.twitter.com&wsdl=&tags=开放,社交&tier=银&拇指URL=https://lh6.ggpht.com/RNc8dD2hXG_rWGzlj09ZwAe1sXVvLWkeYT3ePx7zePCy4ZVV2XMGIxAzup4cKM85NFtL=w124&上下文=/api2&tiersCollection=黄金&resourceCount=0&resourceMethod-0=POST&uriTemplate-0=/*";">

您可以在下载包的下面位置找到三个基于此JavaScript层编写的示例[TwitterSearch、YahooPlaceFinder、YoutubeFinds]。{API经理主页}/样品

导航到上述位置内的上述三个示例,并查看APIPopulator.sh脚本,以更好地了解API管理器相关的jaggery API是如何从这些示例中使用的。

除此之外,对于WSO2 API Manager后端主要功能的实现,我们没有使用web服务调用,而是使用java API,可以从这里找到。您可以使用该API来执行自定义实现。您可以在这里从这个java API中找到我们的java[后端]实现。

最新更新