【问题标题】:how can i call web services with curl with json param?如何使用带有 json 参数的 curl 调用 Web 服务?
【发布时间】:2019-03-14 15:30:53
【问题描述】:

我正在用 Java 编程。 我开发了一个测试网络服务,我在其中传递了一个随机的 json,服务返回我你好

这里是网络服务代码:

@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但它不起作用..我该怎么办?

【问题讨论】:

    标签: java json web-services curl


    【解决方案1】:

    -G--data-urlencode 一起使用:

    curl -v -G 'http://example.org' \
        -H 'header:value' \
        --data-urlencode 'array=[{"name":"george","lastname":"ronney"}]'
    

    来自documentation

    -G, --get

    使用此选项时,此选项将使所有使用 -d--data--data-binary--data-urlencode 指定的数据用于 HTTP GET 请求,而不是 POST 请求用过的。数据将附加到带有? 分隔符的 URL。 [...]

    --data-urlencode <data>

    (HTTP) 这将发布数据,与其他 -d--data 选项类似,只是它执行 URL 编码。 [...]

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-02-03
      • 1970-01-01
      • 2022-07-12
      • 1970-01-01
      • 2023-04-08
      • 2012-04-15
      相关资源
      最近更新 更多