当我执行curl请求在api管理器-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"}
有人能帮忙吗!
发布于 2014-03-28 13:18:30
参数以key1=value1&key2=value2...
格式以卷曲形式传递。因此,如果key1、key2、value1、value2包含任何特殊字符,如=
、&
、?
,则应该进行用户编码。
您的问题在于这个参数:
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\"...}"
https://stackoverflow.com/questions/22708110
复制相似问题