HTTPClient の非推奨コードを変更しようとしていますが、常に i/o 例外が発生し、どこが間違っているのかわかりません。 古い非推奨のコード スニペット
public JSONObject getJSONFromUrl(String address, String longUrl) {
// Making HTTP request
try {
// DefaultHttpClient
DefaultHttpClient httpClient = new DefaultHttpClient();
HttpPost httpPost = new HttpPost(address);
httpPost.setEntity(new StringEntity("{\"longUrl\":\"" + longUrl + "\"}"));
httpPost.setHeader("Content-Type", "application/json");
HttpResponse httpResponse = httpClient.execute(httpPost);
HttpEntity httpEntity = httpResponse.getEntity();
is = httpEntity.getContent();
} catch (UnsupportedEncodingException e) {
e.printStackTrace();
} catch (ClientProtocolException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
}
私の新しい動作しないコードスニペット
try {
HttpURLConnection httpcon = (HttpURLConnection) ((new URL(address).openConnection()));
httpcon.setDoOutput(true);
httpcon.setRequestProperty("Content-Type", "application/json");
httpcon.setRequestMethod("POST");
httpcon.connect();
// byte[] outputBytes = "{'value': 7.5}".getBytes("UTF-8");
is = httpcon.getInputStream();
/* os.write(outputBytes);
os.close();*/
} catch (UnsupportedEncodingException e) {
e.printStackTrace();
} catch (ClientProtocolException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
catch (Exception e) {
e.printStackTrace();
}