2016-06-13 4 views
1

Apache HTTP 클라이언트 v 4.3.4를 사용하고 있습니다. PATCH 메소드를 통해 JSON 데이터를 URL에 어떻게 제출합니까? 나는 이것을 시도했다Apache HttpClient 라이브러리를 사용하여 JSON 데이터와 함께 PATCH 요청을 제출하려면 어떻게해야합니까?

// Create the httpclient 
    HttpClient httpclient = HttpClientBuilder.create().build(); 

    // Prepare a request object 
    HttpUriRequest req = null; 
    if (method.equals(RequestMethod.PATCH)) 
    { 
     req = new HttpPatch(url); 
     req.setHeader("Content-type", "application/json"); 
     if (jsonData != null) 
     { 
      final StringEntity stringData = new StringEntity(jsonData.toString()); 
      req.setEntity(stringData); 
     } // if 

그러나 "req.setEntity"줄에 "The method is undefined"라는 컴파일 오류가 발생한다. 내 요청은 이름 - 값 매개 변수 쌍에 넣는 것과는 반대로 JSON 데이터를 그대로 보내야합니다.

답변

1

HttpPatch 개체는 사용자 코드에서 HttpUriRequest로 함축 된 캐스트입니다. 당신이 캐스팅 할 필요가 있으므로

HttpUriRequest 인터페이스는 setEntity 방법을 지원하지 않습니다

((HttpPatch)req).setEntity(stringData);