使用Api Manager 2.1

时间:2017-04-20 17:18:22

标签: wso2 wso2esb wso2-am wso2carbon

我一直在关注this link使用Api Manager 2.1。导出我的api,但是我的api不应该进行身份验证,所以我尝试这样做:< / p>

curl -H "Authorization:None" -X GET "https://localhost:9444/api-import-export-2.1.0-v2/export-api?name=<API_NAME>&version=<API_VERSION>&provider=admin" -k > cFactorTPACSAPI.zip

我可以生成zip文件,但是当我尝试打开它时,收到以下错误消息:

  

存档格式未知或已损坏

当身份验证为无时,有人知道命令行是否正确吗?

谢谢

更新

我有一个解决方案!

正如Pubci评论的那样,必须为api-import-export应用程序生成基本身份验证。所以,我使用this site来生成base64编码的凭证并且工作!!

2 个答案:

答案 0 :(得分:0)

要导入API,您需要调用受保护服务的api-import-export服务。正如guide所解释的那样,您需要提供超级租户或租户的64位编码凭证。这与您创建或尝试导出的API无关。

答案 1 :(得分:0)

提供凭据有两种方法。 one:您提供授权标头的方式和@Pubci目前已建议。您可以使用postman(chrome扩展)使用授权生成base64凭据 - 基本身份验证第二:您可以使用-u开关传递并在提示符下键入密码。

这是导出/导入命令,对我有用。确保提供正确的api_name,version和provider_name。您可以使用以下网址获取api详细信息(在尝试此网址之前首先登录发布商): HTTPS://:9443 /出版者/站点/块/列表/ AJAX /项目-list.jag行动= getAllAPIs

要导出:

curl -X GET "https://<APIMHost>:9443/api-import-export-2.1.0-v2/export-api?name=HelloWorld&version=v1&provider=admin" > HelloWorld.zip -k -v -u admin

要导入:

curl -F file=@"HelloWorld.zip" -k -X POST "https://<APIMHost>:9443/api-import-export-2.1.0-v2/import-api?preserveProvider=false" -v -u admin

您可以使用您环境中特定租户的相应用户名更改-u admin。