有人用过 HttpAsyncClient 的post提交吗?为什么总是失败啊?麻烦大家帮忙看看?代码可以直接运行的啊~~~~~~~~~~~~~~~~~~~

Kyle-soft 2013-05-22 10:48:47



import java.awt.image.BufferedImage;
import java.io.IOException;
import java.util.HashMap;
import java.util.Map;
import java.util.concurrent.ExecutionException;
import java.util.concurrent.Future;

import javax.imageio.ImageIO;

import org.apache.http.HttpResponse;
import org.apache.http.client.entity.UrlEncodedFormEntity;
import org.apache.http.client.methods.HttpGet;
import org.apache.http.client.methods.HttpPost;
import org.apache.http.impl.nio.client.DefaultHttpAsyncClient;
import org.apache.http.nio.client.HttpAsyncClient;
import org.apache.http.nio.reactor.IOReactorException;
import org.apache.http.util.EntityUtils;


public class AsynQQ {

private Map getMap(HttpAsyncClient httpclient)
throws IllegalStateException, InterruptedException,
ExecutionException, IOException {
System.out.println("getMap.....................................");
Map param = new HashMap();
param.put("username", "test");
param.put("password", "test");
param.put("returnUrl", "/");

return param;

}

private HttpPost getPost(Map gd) {
System.out.println("getPost.....................................");
HttpPost httpost = new HttpPost("http://www.luanxiao.com/login.jspx");

try {
httpost.setEntity(new UrlEncodedFormEntity(RunUtil.getParam(gd),
Config.CHARTUTF));
} catch (Exception e) {
RunUtil.outLog("getDCPost#" + httpost.getURI(), e);
e.printStackTrace();
}
return httpost;
}

public void runGo() throws IllegalStateException, InterruptedException,
ExecutionException, IOException {
System.out.println("runGo.....................................");
while (true) {
HttpAsyncClient httpclient = new DefaultHttpAsyncClient();
httpclient.start();

HttpPost httppost = getPost(getMap(httpclient));

Future<HttpResponse> future = httpclient.execute(httppost, null);
String reValue = EntityUtils.toString(future.get().getEntity());

System.out.println("runGo。reValue:" + reValue);

RunUtil.outLog("runGo#Log#", null);
}

}

public static void main(String[] args) throws Exception {

try {
new AsynQQ().runGo();
} catch (IOReactorException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}

}
}



...全文
143 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
shine333 2013-05-28
  • 打赏
  • 举报
回复
同问...6个字符
kittaaron 2013-05-28
  • 打赏
  • 举报
回复
引用 3 楼 zlyperson 的回复:
没有什么报错啊。就是应该可以输出登陆成功的内容但是没有登录成功。 可能跟这个是异步的有关啊,不知道该怎么做,必须用这个啊哎 可以直接运行啊。你运行下?
不能直接运行吧? httpost.setEntity(new UrlEncodedFormEntity(RunUtil.getParam(gd), Config.CHARTUTF)); RunUtil和Config都不知道是什么。
  • 打赏
  • 举报
回复
运行不了,少一个类,既然不报错,就看看是不是权限,网络,防火墙之类的问题。或者换个url试试
七神之光 2013-05-28
  • 打赏
  • 举报
回复
shine333 2013-05-28
  • 打赏
  • 举报
回复
先mark一下,到公司再看看
Kyle-soft 2013-05-27
  • 打赏
  • 举报
回复
HttpAsyncClient qq 2605277035 希望大家帮忙啊
Kyle-soft 2013-05-27
  • 打赏
  • 举报
回复
引用 2 楼 fangmingshijie 的回复:
错误信息呢?
没有什么报错啊。就是应该可以输出登陆成功的内容但是没有登录成功。 可能跟这个是异步的有关啊,不知道该怎么做,必须用这个啊哎 可以直接运行啊。你运行下?
Kyle-soft 2013-05-27
  • 打赏
  • 举报
回复
没有什么报错啊。就是应该可以输出登陆成功的内容但是没有登录成功。 可能跟这个是异步的有关啊,不知道该怎么做,必须用这个啊哎 可以直接运行啊。你运行下?
  • 打赏
  • 举报
回复
错误信息呢?
caofeng891102 2013-05-23
  • 打赏
  • 举报
回复
接分。。。

62,614

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧