2016-05-31 3 views
0

속성을 삭제하기 위해 HTTP 끝점을 만들려고하지만 삭제를 수행하는 사용자에 대한 추가 메타 데이터를 추가하고 싶습니다. 저지에서 다음 서버 측 코드가 있습니다. 내가 /properties/123?deleted_by=test 같은 URL로 엔드 포인트를 공격 할 때 내가 의도 한대로 쿼리 매개 변수의 모든 작품 삭제하면질의 매개 변수가있는 저지 DELETE 요청

@DELETE 
@Path("/properties/{property_id}?deleted_by={deleted_by}") 
public Response deleteProperty(
    @PathParam("property_id") int propertyId, 
    @QueryParam("deleted_by") String deletedBy) 
{ 
    ... 
} 

그러나 나는 404을 얻는다. 저지는 DELETE에 대한 쿼리 매개 변수를 지원하지 않습니까, 아니면 뭔가를 망쳐 놓고 있습니까?

+0

클라이언트 쪽에서 http 삭제 요청을 보내고 있는지 확인하십시오. – Dimitri

답변

4

경로 주석에 검색어 매개 변수는 언급 할 필요가 없습니다. 다음과 같이하면됩니다.

@DELETE 
@Path("/properties/{property_id}") 
public Response deleteProperty(
    @PathParam("property_id") int propertyId, 
    @QueryParam("deleted_by") String deletedBy) 
{ 
    ... 
} 

Jersey documentation에 추가 예제가 있습니다.

+0

경로에서 쿼리 매개 변수를 제거하면 효과적입니다. 감사! – Dillen

관련 문제