【发布时间】:2015-06-25 08:25:36
【问题描述】:
我正在尝试使用他们的 API 和 Java Web 应用程序将图像上传到 Imgur。我已经从 Imgur API uploading 复制粘贴了这个人的代码。我的方法似乎“成功”运行,但我认为没有发生任何事情。除了 BUILD SUCCESS 之外,我没有收到任何反馈,并且不确定如何获得反馈(错误)。
我愿意花很多时间来让它工作,但我想知道是否有人可以通过建议为什么我当前的实现似乎不起作用来开始我的工作?
我制作了一个普通的 Java 类并粘贴了以下内容:
package main;
import com.sun.org.apache.xerces.internal.impl.dv.util.Base64;
import java.awt.image.BufferedImage;
import java.io.BufferedReader;
import java.io.ByteArrayOutputStream;
import java.io.File;
import java.io.InputStreamReader;
import java.io.OutputStreamWriter;
import java.net.HttpURLConnection;
import java.net.URL;
import java.net.URLEncoder;
import javax.imageio.ImageIO;
/**
*
* @author J
*/
public class TestImgur1 {
public static String getImgurContent(String clientID) throws Exception {
clientID = "(edited out)";
URL url;
url = new URL("https://api.imgur.com/3/image");
HttpURLConnection conn = (HttpURLConnection) url.openConnection();
String data = URLEncoder.encode("image", "UTF-8") + "="
+ URLEncoder.encode("http://i.imgur.com/FB9OZWQ.jpg", "UTF-8");
conn.setDoOutput(true);
conn.setDoInput(true);
conn.setRequestMethod("POST");
conn.setRequestProperty("Authorization", "Client-ID " + clientID);
conn.setRequestMethod("POST");
conn.setRequestProperty("Content-Type",
"application/x-www-form-urlencoded");
conn.connect();
StringBuilder stb = new StringBuilder();
OutputStreamWriter wr = new OutputStreamWriter(conn.getOutputStream());
wr.write(data);
wr.flush();
// Get the response
BufferedReader rd = new BufferedReader(
new InputStreamReader(conn.getInputStream()));
String line;
while ((line = rd.readLine()) != null) {
stb.append(line).append("\n");
}
wr.close();
rd.close();
System.out.println(stb.toString());
return stb.toString();
}
}
我创建了第二个普通的 Java 类来调用第一个,以便我可以运行它:
package main;
import java.io.IOException;
public class ImgurMainTest1 {
public static void main(String[] args) throws IOException
{
try{
TestImgur1 TestImgur1 = new TestImgur1();
}catch (Exception e) {}
}
}
如果您能提出为什么没有发生任何事情(除了建立成功),那将真正帮助我开始。我四处寻找有关该主题的其他问题/答案,但似乎每个人都在尝试以不同的方式实现它,而且我真的很难解释。谢谢阅读
【问题讨论】:
-
你是在运行你的代码(使用
java)还是只编译它(使用javac)?我怀疑你编译它没有任何错误,但实际上并没有运行它。