“尚未发布API” - wso2 api经理

时间:2014-04-29 13:50:13

标签: wso2 wso2carbon

我正在使用连接到mysql数据库的wos2 apimanager 1.6。

当我登录商店时,我可以在主页上看到“尚未发布API”。但我已经从商店发布了api。当我点击API选项卡时,我可以看到列出的API,所以为什么不在主页上。

参见图片以供参考: enter image description here

启动脚本运行时我也注意到以下日志

[2014-04-28 16:54:51,176]  INFO - API Initializing API: admin--ankitTest:v1
[2014-04-28 16:54:51,176]  INFO - API Initializing API: provider1--YoutubeFeeds:v1.0.0
[2014-04-28 16:54:51,176]  INFO - API Initializing API: _WSO2AMTokenAPI_
[2014-04-28 16:54:51,176]  INFO - API Initializing API: _WSO2AMAuthorizeAPI_
[2014-04-28 16:54:51,176]  INFO - API Initializing API: admin--apitest:v1
[2014-04-28 16:54:51,177]  INFO - API Initializing API: admin--test:v1
[2014-04-28 16:54:51,177]  INFO - API Initializing API: _WSO2AMRevokeAPI_

这些不是我发布的API,也不是在商店中看到的,也不是在mysql-db中找到的。那么这些API从何而来?

更新 我发现这些是从位置拾取:API_HOME / repository / deployment / server / synapse-configs / default / api

每当我添加新API时,只能在最近添加的列中看到,而不是在API选项卡中。

当我尝试在搜索栏(商店)中搜索api名称时,它会搜索。

2 个答案:

答案 0 :(得分:2)

我们正在将发布商和商店应用中显示的API存储在WSO2 AM的嵌入式注册表数据库中。您可以从访问管理控制台[/ carbon]浏览您创建的API,导航到Home-> Resources->浏览并导航到注册表路径_system/governance/apimgt/applicationdata/provider/{user},您将看到API已存储在那里。

一旦用户从发布者更改API的状态,就会发生基于solr的索引过程。此索引过程定期[每5秒]发生一次,我们在UI的Store中间部分显示来自此索引进程的过滤API 。为什么我们这样做以获得分页API列表,增加Store API加载时间。因此,在商店中间部分显示API会有大约5秒的延迟。如果您尝试刷新商店页面,您将在中间部分看到您发布的API。 “最近添加的API”部分中显示的5个API直接来自sql查询。这就是首先显示API的原因。

此外,在WSO2 APIM中,我们正在发送三个默认API,如 WSO2AMTokenAPI WSO2AMAuthorizeAPI WSO2AMRevokeAPI 。这些将不会显示在发布商/商店中而是那些公开APIM集成的oauth2功能,在https://docs.wso2.org/display/AM160/Token+API中解释。

感谢;

/ Lalaji

答案 1 :(得分:0)

这可能是由于缓存而发生的,一旦您将生命周期更改为其他状态并保存,就会发生这种情况。

您需要检查发布商处是否将特定应用状态的LifeCycle设置为PUBLISHED,保存。

按ctrl + F5

清除缓存