Javaを使用して画像をimageshackにアップロードする以下のコードに問題があります。私が受け取る応答は、http が接続を拒否しているというものです。私の問題は、画像ファイルがbase64、byteArrayなどであるかどうかわからないため、画像ファイルをどのように提供しているかにあると思います.
どんな助けでも素晴らしいでしょう、ありがとう。
public String ImageShack (String imageDir, String myKey) {
//set file
BufferedImage image = null;
File file = new File(imageDir);
//Set namevalue pairs
List<NameValuePair> params = new ArrayList<NameValuePair>();
try
{
image = ImageIO.read(file);
ByteArrayOutputStream byteArray = new ByteArrayOutputStream();
ImageIO.write(image, "png", byteArray);
byte[] byteImage = byteArray.toByteArray();
String dataImage = new Base64().encodeAsString(byteImage);
//Assign name valued pars
params.add(new BasicNameValuePair("key", myKey));
params.add(new BasicNameValuePair("fileupload", dataImage));
params.add(new BasicNameValuePair("format", "json"));
//Create HTTPClient and Client
HttpClient httpClient = new DefaultHttpClient();
HttpPost httpPost = new HttpPost("http://www.imageshack.us/upload_api.php");
//set entities
httpPost.setEntity(new UrlEncodedFormEntity(params));
//Execute & get response
HttpResponse response = httpClient.execute(httpPost);
return response.toString();
}
catch(Exception e)
{
return "Error: " + e.getMessage();
}
}