Android发送网络请求获取验证码,登录正方教务系统(一)

本文介绍如何在Android应用中发送网络请求获取验证码并登录正方教务系统。通过抓包软件分析请求数据,利用HttpClient进行GET和POST操作,解释了cookie的处理以及登录成功和失败的判断。还提到了使用Jsoup解析返回的HTML页面。
摘要由CSDN通过智能技术生成


Android发送网络请求获取验证码,登录正方教务系统(一)


         由于我是在校大学生,所以就以登录我们学校的正方教务系统为例讲解一下Android中有关网络请求的操作,另外还会讲一下如何为Android客户端写后台接口。寒假里用一个多月的时间学习了相关知识之后,先写了一个可以登录学校官网并查询一些信息的app,后来还在服务端写了可以请求获取这些数据的接口,可以供大家来调用,希望我的博客可以对想要学习它的人有帮助。下面是app截图。


       

       首先说一下我的设计思路,由于在写这个项目之前,对于Android网络请求不怎么了解,所以我先写了一个测试用的app,使用最简单并且能够让自己看懂的界面,学习相关知识之后用这个app将所有的数据请求到,然后再正式写自己要提供给别人使用的界面漂亮的app,并且直接把之前写的请求数据的代码复制过去,这时候请求数据的代码一定是 正确的,只需要好好写界面就OK了。其实这只是我的一个小想法,因为自己也刚接触Android不久,所以对很多东西的使用也不熟悉,很多时候会出错,这样将请求和界面分两部来完成,可以大大方便我们的测试。

       所以,本篇博客会先讲解如何发送网络请求,获取数据。

一、准备工作

       如果之前没有了解过这方面的知识,那么在动手写之前最好要学习了解一下Android中网络请求、http协议的相关知识。目前Android中原生的请求方式是使用HttpURLConnection,节省资源,但代码量较大,另一种方式HttpClient,这种方式在Android6.0之后就被Google剔除了,但我们依然可以通过导入它的jar包来使用它,这种方式资源耗费大,但是写起来较为方便,而且看到网上大部分的博客都是用它来写的,所以我在这里还是采用了HttpClient的方式。http协议相关的知识,get和post请求,cookie等都最好做一下了解,因为了解这些会对后面代码的理解有帮助。这些大家都自行百度,我不再一一列举讲解。

       另外,我们还需要下载抓包软件,在app上模拟发送请求之前,要抓取到用电脑客户端向服务端发送请求的数据,我是下载了httpwatch(httpwatch professional 版本),和Chrome相互补充,httpwatch是集成在IE浏览器或者是火狐浏览器的工具栏上的,如果你是win10的系统,就会自带一个IE11浏览器,如果找不到它的话,需要从设置一些选项中将它打开。下载httpwatch并找到IE浏览器之后,在IE浏览器中找到httpwatch的选项并勾选,就可以httpwatch打开了(不同的IE浏览器版本打开的方式不一样,自己多尝试寻找一下,IE11是在界面任意处右击,然后勾选httpwatch professional 就OK了)。而Chrome浏览器,只需要点击右上角的三个点的按钮,点击更多工具,点击开发者选项就好了。

二、获取验证码

1.抓取验证码数据(以Chrome浏览器为例)

       我们先在Chrome浏览器中打开学校教务系统的登录界面,点击开发者选项之后,在右面弹出的一栏中的上方选择Network,刷新界面。

       这个时候我们看到

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值