邮递员发布请求问题

时间:2018-02-02 12:55:15

标签: java post postman

有人可以帮助我如何使用以下参数发送POST请求:

  @POST
  @Produces(MediaType.APPLICATION_JSON)
  public Response restAPIforLocation(@QueryParam("location") String location, String Params)

我尝试在Postman的Body中发送一个带有以下参数的文件:

{
 "location": "new york",
 "Params": "{}"
}

但是在发送上述请求时,我将位置字符串视为空。

2 个答案:

答案 0 :(得分:1)

使用POSTMAN发送请求以提供控制器方法:
your-url?location=some_location
location是一个查询参数,所以在 symlol之后传入URL。 要发送Params,只需发送一个空的JSON正文(只需使用方括号{ }

POST  HTTP/1.1
Host: url?location=your_location
Content-Type: application/json
Cache-Control: no-cache
Postman-Token: 3cf60381-a9f1-1610-53e0-91be19a68266

{

}

它是POSTMAN中请求的原始表示

答案 1 :(得分:0)

使用使用注释@QueryParam('location'),这会导致该值成为查询参数。

在您的示例中,您将在请求的有效内容(正文)中发送信息。 要在函数中正确接收此值,您需要使用注释@FormParam('location')

更多详情:

  

查询参数

     

查询参数是一些特殊参数,允许您更改请求的范围以反映资源的子集。简单地说 - 您可能想要检索大型数据   资源数量,但如果不这样做,希望过滤掉一些资源   匹配名称,类型,大小,状态等。

  

身体参数

     

Body Parameters指示何时需要构建要检查的端点的数据体。这有时被称为有效载荷。您可以使用API​​所需的任何格式构建主体。在Rubrik的情况下,格式应该是JSON,但其他API可能完全使用XML,YAML或其他东西。大多数需要body参数的端点都希望更改资源的数据。

http://wahlnetwork.com/2017/09/25/working-with-restful-api-query-body-and-path-parameters/