У мене є щось на зразок такого:
final String url = "http://example.com";
final HttpClient httpClient = new HttpClient();
final PostMethod postMethod = new PostMethod(url);
postMethod.addRequestHeader("Content-Type", "application/json");
postMethod.addParameters(new NameValuePair[]{
new NameValuePair("name", "value)
});
httpClient.executeMethod(httpMethod);
postMethod.getResponseBodyAsStream();
postMethod.releaseConnection();
Він постійно повертається з 500. Постачальник послуг каже, що мені потрібно надіслати JSON. Як це робиться з Apache HttpClient 3.1+?
NameValuePair
просто додаєте параметр запиту, ви не надсилаєте жодного JSON у свій код. Яку структуру JSON очікує служба, які ваші дані надсилати? Ви шукаєтеpostMethod.setRequestEntity()
з ,StringRequestEntity
який містить ваш JSON.