WSO2 am 1.10.0:删除然后重新创建 API:"Error occurred while adding the API. A duplicate API already exists for {CONTEXT}"
WSO2 am 1.10.0: delete and then recreate an API: "Error occurred while adding the API. A duplicate API already exists for {CONTEXT}"
我添加了一个 API,后来在 /carbon 管理控制台中删除了它。现在我想把它加回去,但失败了"wso2 am 1.10.0: Error occurred while adding the API. A duplicate API already exists for {CONTEXT}"。
我什至手动转到数据库并从所有相关表中手动删除 API,包括 AM_API。我也手动删除了/repository/deployment/server/synapse-configs/default/api下的相关文件
.
那么我还需要做什么才能重新创建 API 而不会出现上述错误?这是这个版本的错误吗?
相关讨论:WSO2 API Manager - context management(这个问题会在 1.10.0 版本中回归吗?)
首先要注意的是,您不应该通过碳管理控制台删除 apis。您看到的 xml 表示只是底层中介引擎在路由消息时引用的运行时逻辑。 WSO2 API 中的一个 API 管理器具有三个方面。
- 存储在注册表数据库中的元数据
- APIM数据库中存储的订阅等数据
- 运行时 API 表示,存储为 xml 文件
现在,首先发生的是,您刚刚删除了 xml。但是,告诉 api 经理有关 api 的所有其他数据仍然存在。这就是为什么你得到最初的错误。手动删除元数据等并不容易。特别是因为您(以及包括我在内的任何其他用户)不知道它们的存储位置。
因此,删除 api 的最佳方法是从 api 发布者 UI 中删除它,或者通过 api 发布者的 [=42] 删除它=].即使您尝试通过上述两种方法删除,如果有任何活动订阅,它也会抱怨。所以,你也必须照顾他们。
我可以想到以下方法来克服这种情况:
通过发布者的其余部分删除api(这是我能看到的最佳选择)
如果#1 不起作用,那么您必须首先检查 APIM 数据库中的所有条目并删除它们(我无法列出必要的表等.).然后,如果你熟悉注册表,你可以进入注册表浏览器,遍历/_system/governance/apimgt/applicationdata/集合,删除与你的api相关的资源。这可能会帮助您清理系统。
我添加了一个 API,后来在 /carbon 管理控制台中删除了它。现在我想把它加回去,但失败了"wso2 am 1.10.0: Error occurred while adding the API. A duplicate API already exists for {CONTEXT}"。
我什至手动转到数据库并从所有相关表中手动删除 API,包括 AM_API。我也手动删除了/repository/deployment/server/synapse-configs/default/api下的相关文件 .
那么我还需要做什么才能重新创建 API 而不会出现上述错误?这是这个版本的错误吗?
相关讨论:WSO2 API Manager - context management(这个问题会在 1.10.0 版本中回归吗?)
首先要注意的是,您不应该通过碳管理控制台删除 apis。您看到的 xml 表示只是底层中介引擎在路由消息时引用的运行时逻辑。 WSO2 API 中的一个 API 管理器具有三个方面。
- 存储在注册表数据库中的元数据
- APIM数据库中存储的订阅等数据
- 运行时 API 表示,存储为 xml 文件
现在,首先发生的是,您刚刚删除了 xml。但是,告诉 api 经理有关 api 的所有其他数据仍然存在。这就是为什么你得到最初的错误。手动删除元数据等并不容易。特别是因为您(以及包括我在内的任何其他用户)不知道它们的存储位置。
因此,删除 api 的最佳方法是从 api 发布者 UI 中删除它,或者通过 api 发布者的 [=42] 删除它=].即使您尝试通过上述两种方法删除,如果有任何活动订阅,它也会抱怨。所以,你也必须照顾他们。
我可以想到以下方法来克服这种情况:
通过发布者的其余部分删除api(这是我能看到的最佳选择)
如果#1 不起作用,那么您必须首先检查 APIM 数据库中的所有条目并删除它们(我无法列出必要的表等.).然后,如果你熟悉注册表,你可以进入注册表浏览器,遍历/_system/governance/apimgt/applicationdata/集合,删除与你的api相关的资源。这可能会帮助您清理系统。