我开始学习 java,并且在使用我认为是从 Apache commons 获得的 Http 方法时遇到了难以置信的困难。我正在尝试创建一个可以在 btc-e.com 上进行比特币交易的类。
我下载了 HTTPComponents 客户端,然后将所有 .jar 文件包含在我的项目的构建路径中。但由于某种原因,Eclipse 仍然无法识别其中一些方法。具体来说,HttpUtils 无法识别。
有人可以引导我逐步完成如何在我的代码中正确包含这些类吗?我对此真的很陌生,并且花了 6 个多小时试图解决这个问题。
这是我所拥有的要点:
public static int Buyy(double rate, double amount){
Calendar now = Calendar.getInstance();
long nonce = ( now.getTimeInMillis()/1000);
String api_key= " ";
String api_secret = " ";
// Create a new HttpClient and Post Header
HttpClient httpclient = new DefaultHttpClient();
HttpPost httppost = new HttpPost("http://www.btc-e.com/tapi");
try {
// Add data
HashMap params = new HashMap();
params.put("method", "Trade");
params.put("pair", "btc_usd");
params.put("type", "buy");
params.put("rate", rate);
params.put("amount", amount);
params.put("nonce", nonce);
HashMap headers = new HashMap();
headers.put("Contnent-type", "x-www-form-urlencoded");
headers.put("key", api_key);
headers.put("sign", api_secret);
httppost.setEntity(new UrlEncodedFormEntity(params));
// Execute HTTP Post Request
HttpResponse response = httpclient.execute(httppost);
} catch (ClientProtocolException e) {
// TODO Auto-generated catch block
} catch (IOException e) {
// TODO Auto-generated catch block
}
}
具体来说,我遇到的错误是: - 导入org.apache.http.client.methods.HttpResponse无法解析
-HttpResponse 无法解析为类型
-无法解析 org.apache.http.HttpResponse 类型。它是从所需的.class文件间接引用的
-无法解析 org.apache.http.entity.StringEntity 类型。它是从所需的.class文件间接引用的
我认为这意味着我没有导入我需要的所有文件?但我不知道该怎么做——而且我也不知道我需要哪些。我真的迷路了。
谢谢!我真的很感谢任何帮助。我正在使用 Eclipse。
这是我已经导入的内容:
import java.io.IOException;
import java.io.UnsupportedEncodingException;
import java.security.InvalidKeyException;
import java.security.NoSuchAlgorithmException;
import java.util.Calendar;
import java.util.HashMap;
import java.util.Iterator;
import java.util.List;
import java.util.Map;
import javax.crypto.Mac;
import javax.crypto.spec.SecretKeySpec;
import org.apache.commons.codec.binary.Hex;
import org.apache.http.client.ClientProtocolException;
import org.apache.http.client.HttpClient;
import org.apache.http.client.entity.UrlEncodedFormEntity;
import org.apache.http.client.methods.HttpPost;
import org.apache.http.client.methods.HttpResponse;
import org.apache.http.impl.client.DefaultHttpClient;
最佳答案
对于 HttpResponse
我认为导入应该是
import org.apache.http.HttpResponse;
而不是
import org.apache.http.client.methods.HttpResponse;
API 中似乎不存在第二个。
还要检查您是否已将 HttpCore 和 HttpClient 的 JAR 包含在构建路径中。
关于java - 如何正确导入类: Http Client from Apache Commons,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31876073/