`

HttpClient登陆网站参考

 
阅读更多
static final String LOGON_SITE = "xxx.com";

 static final int LOGON_PORT = 80;

 

HttpClient client = new HttpClient();
  client.getHostConfiguration().setHost(LOGON_SITE, LOGON_PORT);

  PostMethod post = new PostMethod("/terminal/system/login.action?loginName=XXX&password=XXX&oem=terminal");

  // 设置登陆需要的几个参数
  // NameValuePair name = new NameValuePair("loginName","XXX");
  // NameValuePair pass = new NameValuePair("password","XXX");
  // NameValuePair em = new NameValuePair("oem","terminal");
  // post.setRequestBody(new NameValuePair[]{name,pass,oem});

  client.executeMethod(post);

  System.out.println(post.getStatusLine().toString());

  post.releaseConnection();

  // 检查是否重定向

  int statuscode = post.getStatusCode();
  
  if ((statuscode == HttpStatus.SC_MOVED_TEMPORARILY) || (statuscode == HttpStatus.SC_MOVED_PERMANENTLY) ||

     (statuscode == HttpStatus.SC_SEE_OTHER) || (statuscode == HttpStatus.SC_TEMPORARY_REDIRECT)) {

   // 读取新的URL地址

   Header header = post.getResponseHeader("location");

   if (header != null) {

    String newuri = header.getValue();

    if ((newuri == null) || (newuri.equals("")))

     newuri = "/";

    GetMethod redirect = new GetMethod(newuri);

    client.executeMethod(redirect);

    System.out.println("Redirect:" + redirect.getStatusLine().toString());

    redirect.releaseConnection();

   } else
    System.out.println("Invalid redirect");
  }
分享到:
评论

相关推荐

    httpclient3 自动登陆淘宝, 开心网

    标题中的“httpclient3 自动登陆淘宝, 开心网”指的是使用Apache HttpClient 3.x库来实现自动化登录淘宝和开心网的功能。HttpClient是一个强大的HTTP客户端API,它允许开发者模拟浏览器行为,发送HTTP请求并接收...

    httpclient模拟登录实例

    在学习和使用HttpClient时,建议参考官方文档、博客文章(如博文链接中的“https://shaozhen.iteye.com/blog/950472”),以及在线社区的讨论和示例代码,以深入理解和掌握这个强大的工具。记住,实践是检验真理的...

    c#实现WebQQ登陆(c/s)

    这个程序可能已经实现了从登录到获取会话信息的完整流程,供学习者参考和修改。 总的来说,使用C#实现WebQQ登录涉及到对HTTP协议的理解,以及正确地构建和发送网络请求。通过这个过程,你可以学到如何在C#中处理...

    java小米商城模拟登陆

    10. **持续学习与改进**:网络环境和网站结构可能会变化,模拟登录的代码需要定期更新和维护,以适应新的挑战。 在实际操作中,首先分析小米商城的登录页面,找到提交登录信息的URL和所需参数。然后使用HttpClient...

    新浪微博模拟登陆

    【标题】:“新浪微博模拟登陆” 在信息技术领域,模拟登录是一种常见的技术手段,它允许开发者通过编程方式自动登录网站并执行一些操作,例如抓取数据...通过深入理解和实践,可以为其他类似网站的模拟登录提供参考。

    QQ自动登陆器C#源码

    C#的`System.Net`命名空间提供了`HttpClient`类,可以方便地发送GET和POST请求。在登录过程中,我们需要将用户名、密码加密后作为POST数据发送到服务器。 4. **JSON解析**:通常,服务器返回的数据是JSON格式,我们...

    c#实例教学之QQ登陆访问本地数据库

    在本"C#实例教学之QQ登陆访问本地数据库"的教学中,我们将探讨如何使用C#编程语言来实现一个功能,允许用户通过QQ账号登录,并在登录后访问本地数据库。这个实例涵盖了多个关键知识点,包括C#的图形用户界面设计、...

    C#微信模拟登陆群发信息

    开发者可以参考这些代码来理解具体的实现细节,如如何处理登录流程、如何构建群发消息的请求结构、如何处理微信API的响应等。 总的来说,"C#微信模拟登陆群发信息"是一项结合了C#编程、网络编程、微信API调用和JSON...

    App远程登录与会话维持的实现.pdf

    在App开发中,使用单例模式的HttpClient可以有效地维护会话状态,避免频繁创建和销毁HttpClient实例带来的性能开销。单例模式确保在整个应用程序中只有一个HttpClient实例,所有网络请求共享同一会话,从而简化会话...

    C#清除WebBrowser中Cookie缓存的方法

    最近用C#写一个程序,用一个窗体中的WebBrowser来登陆网站,但是WebBrowser有cookie缓存,第二次登陆的时候WebBrowser仍然是第一次登陆后的状态,所以要清除WebBrowser的cookie缓存。 在stackoverflow上找到一段可用...

    C#模拟登录淘宝联盟下载淘宝客订单xls

    最后,源码和教程文章(http://blog.csdn.net/hdlovefork/article/details/9823113)提供了具体的实现细节和步骤,这对于初学者来说是一份宝贵的参考资料。通过阅读和学习,你可以更好地理解模拟登录的过程,以及...

    java实现新浪微博抓取关注和粉丝的课程设计报告

    1. **HttpClient模拟登陆无法获取Cookie** - 解决方案:通过分析新浪的加密算法,并使用第三方工具如HTTPFox来捕获加密过程中的JS脚本,成功获取Cookie。 2. **通过HttpMethod请求网址之后返回内容出现乱码** - ...

    CloudStakClient:java CloudStakClient

    CloudStakClient java CloudStakClient ...秉着最简化的代码,剥离了httpclient,直接用拼凑请求字符串完成。 仅供参考使用。 代码只演示了简单的几个api调用接口,更多的功能请参考cloudstack官方api文

    WPFWxSend.rar(微信模拟登陆,主动发消息)

    WPFWxSend是一款基于Windows Presentation Foundation...总的来说,WPFWxSend项目涵盖了前端开发、后端通信、网页自动化、授权机制和安全等多个方面的知识,对学习和研究微信API的开发者来说,是一个有价值的参考实例。

    YYAutCom:监控YY直播客户端,实现自动登陆进入直播间功能

    标题“YYAutCom:监控YY直播客户端,实现自动登陆进入直播间功能”揭示了这是一个针对YY直播平台的自动化工具。YY直播是中国一个流行的在线娱乐直播平台,用户可以通过它观看各种直播内容,包括游戏、音乐、教育等。...

Global site tag (gtag.js) - Google Analytics