繁体   English   中英

如何使用CURL和1.6.0在WSO2中的API管理器组件中向API Publisher添加API

[英]How to add an API to API Publisher in API Manager Component in WSO2 using CURL with 1.6.0

当我执行curl请求以在API Manager-Publisher中发布一个api时,它显示它已被添加……但无法更改其状态。 也无法打开该API!

我的请求:

curl -X POST -b cookies  http://my.api-site.com:9763/publisher/site/blocks/item-add/ajax/add.jag \
 -d "action=addAPI&name=TwitterAPI&context=/twitter&version=1.0.0&tier=Bronze&tier=Gold&transports=http&http_checked=http&transports=https&https_checked=https&description=Twitter&visibility=public API&tags=twitter,api&resourceCount=0&resourceMethod-0=GET,PUT,POST,DELETE,OPTIONS&resourceMethodAuthType-0=Application & Application User,Application & Application User,Application & Application User,Application & Application User,None&uriTemplate-0=/*&resourceMethodThrottlingTier-0=Unlimited, Unlimited, Unlimited, Unlimited, Unlimited&tiersCollection=Bronze,Gold,Silver,Unlimited" \
 -d 'endpoint_config={"production_endpoints":{"url":"http://search.twitter.com","config":null},"endpoint_type":"http"}'

回应:

{"error" : true, "message" : " null"}

谁能帮忙!

参数在curl中以key1=value1&key2=value2...格式传递。 所以,如果KEY1,KEY2,值1,值包含像任何特殊字符=&? 然后应该进行urlencoded。

您的问题是与此参数有关:

resourceMethodAuthType-0=Application & Application User,Application & Application User,Application & Application User,Application & Application User,None

您的价值中有很多&特色。 应该使用urlencoded 例如,应将&替换为%26因此字符串为:

resourceMethodAuthType-0=Application %26 Application User,Application %26 Application User,Application %26 Application User,Application %26 Application User,None

另一件事,如果从Windows运行命令,则始终使用双引号,而不是单引号。 例如:

-d "endpoint_config={\"production_endpoints\"...}"

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM