我有一种情况:我部署在服务器上的 Java 程序从网站上获取一个页面,该页面有一个验证码图像。图像将显示给最终用户,最终用户将输入验证码的值并将该页面提交给服务器。服务器将该值提交给主网站。
我已经使用 http 客户端尝试过,但在提交时,它说图像值无效。
请帮我。显示用户 capthca 图像的代码
HttpClient hc=new HttpClient();
GetMethod gm=new GetMethod("https://abc.com/register");
int sta=hc.executeMethod(gm);
String line=gm.getResponseBodyAsString();
urlStr="https://abc.com/captchaImage";
URL url=new URL(urlStr);
BufferedImage img1 = ImageIO.read(url);
ImageIO.write(img1, "jpg", out);
向 abc.com 提交请求
HttpClient hc=new HttpClient();
PostMethod hm=new PostMethod("https://abc.com/submit");
hm.addParameter("pwd","Asdf@123456" );
hm.addParameter("confirmPwd","Asdf@123456");
hm.addParameter("hintQues","Birth+City");
hm.addParameter("hintAns","fdgf");
hm.addParameter("captchavalue",request.getParameter("cap"));
hm.addParameter("register","Register");
int returnCode = hc.executeMethod(hm);
out.println(hm.getResponseBodyAsString());