用Apache httpclient模拟登陆学生个人信息系统

本文记录了作者使用Java的Apache HttpClient库尝试模拟登录学校教务系统的过程,遇到的挑战包括理解HTTP状态码302、处理Cookies、解决重定向问题,以及在没有完全理解动态Query String的情况下逐步解决问题。最终通过获取并使用重定向URL成功登录系统。
摘要由CSDN通过智能技术生成

不同学校的教务系统设计应该会有不同,这里就只针对我的学校。本文主要讲作为纯小白连返回码302都还不懂的我是怎么一步步整的。

我打算用的是java。

因为模拟登录这块以前都没做过,就简单百度了下,找到了开发用的相应的包,比如httpclient,网上也有别人做好的代码上传的,所以就先跑跑别人的代码试试呗,记住把需要的jar包先下好并导入到工程,下面是别人的代码

package com.zb.util;
import java.io.BufferedReader;
import java.io.InputStream;
import java.io.InputStreamReader;


import org.apache.http.HttpEntity;
import org.apache.http.HttpResponse;
import org.apache.http.NameValuePair;


import org.apache.http.client.HttpClient;
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.client.AbstractHttpClient;
import org.apache.http.impl.client.DefaultHttpClient;
import org.apache.http.message.BasicNameValuePair;


import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;


import org.apache.http.cookie.Cookie;


public class postData {


HttpResponse httpResponse;
List<Cookie> cookies;
String result = "";


String data = "";

public void getResult() {


String url = "http://210.38.137.101:9080/xsxt/xsxt.jsp";// 海大
HttpClient httpclient = new DefaultHttpClient();
/* 建立HTTP Post连线 */
HttpPost httpPost = new HttpPost(url);
List<NameValuePair> params = new ArrayList<NameValuePair>();


// 用户名密码
params.add(new BasicNameValuePair("userId", "xxxx"));
params.add(new BasicNameValuePair("userPass", "xxx"));


// 发出http request
try {
// 发出HTTP request
/* 添加到httpPost提交的内容中 */


httpPost.setEntity(new UrlEncodedFormEntity(params, "UTF-8"));
// 执行 ,取得HTTPresponse


httpResponse = httpclient.execute(httpPost);


// 若状态码为200 ok
if (httpResponse.getStatusLine().getStatusCode
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值