请教各位如何才能实现模拟登录?
问题描述
在模拟学校教务处登录时,已知用户名和密码。密码会与服务器给的随机字符串进行SHA1加密。
如何在一次http连接中即获得这个随机字符串,又能发送用户名和密码,。
一次http连接中不可能先获取随机字符串,再发送用户名和密码,这样会报错。因为一次http连接总是先发送数据,才能获取信息。
网站登录流程
1、登录时在网站上将用户名、密码输入,(除了用户名和密码两个参数还有两个,还有两个隐藏表单参数)
2、关于密码,密码会结合服务器给的一个随机值进行SHA1加密
注意这个随机值是服务器给的,每次请求页面都会不同。
3、关于请求头,如果是第一次登陆教务处网站,此时请求头没有Cookie字段,服务器响应之后会给一个Cookie作为下次请求是连接。
4、 关于请求方法,填写用户名和密码发送给服务器是POST方法
5、关于临时移动(状态码302),填写用户和密码后,POST发送给服务器,服务器响应302状态码在本登录页面,此时通过之前获取到的Cookie,设置到请求头中,同时添加的还有referer请求字段表示来源。此时再发给服务器则登录进教务处系统网站。