62,614
社区成员
发帖
与我相关
我的任务
分享
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();
}
}
}