【发布时间】:2024-01-01 22:05:01
【问题描述】:
我正在为删除 API 的服务器编写客户端代码。 API 规范要求发送数据。我正在使用 HttpComponents v3.1 库来编写客户端代码。使用HtpDelete 类我找不到向它添加请求数据的方法。有没有办法这样做?下面是代码sn-p。
HttpDelete deleteReq = new HttpDelete(uriBuilder.toString());
List<NameValuePair> postParams = new ArrayList<NameValuePair>();
postParams.add(new BasicNameValuePair(RestConstants.POST_DATA_PARAM_NAME,
postData.toString()));
try {
UrlEncodedFormEntity entity = new UrlEncodedFormEntity(postParams);
entity.setContentEncoding(HTTP.UTF_8);
//deleteReq.setEntity(entity); // There is no method setEntity()
deleteReq.setHeader(RestConstants.CONTENT_TYPE_HEADER, RestConstants.CONTENT_TYPE_HEADER_VAL);
} catch (UnsupportedEncodingException e) {
logger.error("UnsupportedEncodingException: " + e);
}
提前致谢。
【问题讨论】:
-
出于好奇:那是什么 API? (需要一个 DELETE 请求正文)
-
它是一个自定义的 3rd 方 REST API。 :)
标签: http httpclient apache-httpcomponents http-delete