调用Web服务的Post方法

时间:2014-05-01 20:42:16

标签: java web-services dropwizard

我有一个包含3个端点的Web服务。如下 -

GET     /Game/getGameAll/ (com.service.rest.Game)
GET     /Game/getGameById/{gameId} (com.service.rest.Game)
POST    /Game/updateGame/{gameId}/{isAvailable} (com.service.rest.Game)

对于测试我使用 -

localhost:8080/Game/getGameAll/
localhost:8080/Game/getGameById/1000

它完美无缺。

但在执行更新功能时 -

localhost:8080/Game/updateGame/1000/true

它给我一个错误404:找不到方法。

但是如果我将注释从post更改为get。它执行。

//@POST  : If this is changed to Get, it works! But not with @POST. 
@GET
@Path(value = "/updateGame/{gameId}/{isAvailable}")
@Produces(MediaType.APPLICATION_JSON)
public Game updateGame(
    @PathParam(value = "gameId") Integer gameId,
    @PathParam(value = "isAvailable") int isAvailable) { .. 
.
}

如何执行Web服务的Post方法?

1 个答案:

答案 0 :(得分:1)

您是否正在尝试使用网络浏览器?您将无法以这种方式调用POST方法。

您可以使用命令行中的curlPostman等交互式客户端。