有人可以帮助我如何使用以下参数发送POST请求:
@POST
@Produces(MediaType.APPLICATION_JSON)
public Response restAPIforLocation(@QueryParam("location") String location, String Params)
我尝试在Postman的Body中发送一个带有以下参数的文件:
{
"location": "new york",
"Params": "{}"
}
但是在发送上述请求时,我将位置字符串视为空。
答案 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/