我尝试按照HTTP方法语义创建REST API,但我遇到了DELETE方法。
在我的用例中,该服务位于对用户进行身份验证的网关之后。此服务使用SSO令牌,然后用于对用户进行身份验证并获取其详细信息。从这一刻起,我试图调用我的服务,在那里我使用我要删除的资源的id作为路径变量,但后来我不知道如何传递用户的id用于验证。
我已经阅读了许多关于向DELETE方法添加正文的问题的帖子。我还认为添加自定义标头以识别用户不是正确的方法。在我的选择中,我认为只有2个是明智的:
有什么建议吗?
答案 0 :(得分:2)
您应该使用HTTP标头参数来传递用户令牌。
@DELETE
@Path("/{id}")
@Consumes(MediaType.APPLICATION_JSON)
@Produces(MediaType.APPLICATION_JSON)
public Info deleteInfo(
@HeaderParam("Authorization") String token,
@PathParam("id") Long id){
}
答案 1 :(得分:0)
HTTP身份验证,也许?这是什么,不是吗?请参阅RFC 7235。