我正在用Java编程。 我开发了一个测试Web服务,其中传递了一个随机json,并且该服务向我打招呼
以下是Web服务代码:
@Path("test")
@GET
@Consumes(MediaType.APPLICATION_JSON)
public String test(@HeaderParam("token") String token, @QueryParam("array")String array)
{
return "hello";
}
我用curl呼叫服务
curl -v -H 'token:aaaa' 'http://140.145.1.2/clayapi/restservices/test?array=[{"name":"george","lastname":"ronney"}]';
错误消息:
curl: (3) [globbing] illegal character in range specification at pos 60
我试图添加-g,但是它不起作用..我该怎么办?
答案 0 :(得分:2)
与-G
一起使用--data-urlencode
:
curl -v -G 'http://example.org' \
-H 'header:value' \
--data-urlencode 'array=[{"name":"george","lastname":"ronney"}]'
-G
,--get
使用此选项时,会将
-d
,--data
,--data-binary
或--data-urlencode
指定的所有数据用于HTTPGET
请求中POST
请求中的,否则将使用该请求。数据将使用?
分隔符附加到URL。 [...]
--data-urlencode <data>
(HTTP)与其他
-d
,--data
选项类似,它发布数据,但执行URL编码。 [...]