我在像这样的常用方法中使用 HttpMethodBase 提交请求(HttpMethodBase 方法,字符串输入) PostMethod 方法 = 新的 PostMethod(url) 或者 GetMethod 方法 = new GetMethod(url)
但是我们刚刚更新到 HttpClient4,没有明确的方法来使用版本 3 中的通用对象。
为 Post、Get、Delete 等获取一些公共(public)对象的最佳方法是什么? 我不想维护发布、获取或删除的不同方法。
最佳答案
您可以创建一个 DefaultHttpClient 和不同的方法(GET、POST),然后使用 DefaultHttpClient 执行该方法。例如,
import java.io.IOException;
import org.apache.http.HttpResponse;
import org.apache.http.client.ClientProtocolException;
import org.apache.http.client.methods.HttpGet;
import org.apache.http.client.methods.HttpPost;
import org.apache.http.client.methods.HttpRequestBase;
import org.apache.http.impl.client.DefaultHttpClient;
public class MyHttp
{
public class Constants
{
public final static int METHOD_GET = 1;
public final static int METHOD_POST = 2;
}
public void executeHttpRequest(String targetUrl, int methodType) throws ClientProtocolException, IOException
{
HttpRequestBase method = null;
DefaultHttpClient httpclient = new DefaultHttpClient();
switch (methodType)
{
case Constants.METHOD_GET :
method = new HttpGet(targetUrl);
break;
case Constants.METHOD_POST :
method = new HttpPost(targetUrl);
break;
}
HttpResponse response = httpclient.execute(method);
}
}
关于java - java HttpClient4 中的 HttpMethodBase 替代方案,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9089547/