qq_42776164 2021-10-12 17:46 采纳率: 0%
浏览 32
已结题

如何使用wget发送post请求登录校园网?

想用路由器完成校园网登录,能选择运营商。
尝试过mentohust插件可以正常登录但是不能选择电信运营商
所以换个思路使用wget发送post请求看看能不能登录解决问题
附上登录成功后cookie 和 formdata不知道有没有帮助

img


img


img

以下是校园网登录页面源码

var AuthInterFace = (function() {
    var ePortalUrl = "";
    function post(url, data,callback) {
        var thePost = (window.XMLHttpRequest) ? new XMLHttpRequest() : new ActiveXObject("Microsoft.XMLHTTP");
        thePost.open("POST", url, true);
        thePost.setRequestHeader("Content-Type", "application/x-www-form-urlencoded; charset=UTF-8");
        thePost.onreadystatechange=function() {
            if (thePost.readyState == 4 && thePost.status == 200) {
                if(thePost.responseText&&thePost.responseText!=""){
                    if(callback){
                        callback(eval("("+thePost.responseText+")"));
                    }
                }
            }
        }
        thePost.send(data);
    }
    return {
            init:function(url){
                ePortalUrl=url + "InterFace.do?method=";
            },
            login : function(userId, password, service, queryString,operatorPwd,operatorUserId,validcode,callback) {
                /* 1.登录 */
                //密码是否加密
                var passwordEncrypt = encodeURIComponent(encodeURIComponent(document.getElementById("passwordEncrypt").value));
                if(passwordEncrypt&&passwordEncrypt=="true"){
                    setMaxDigits(130);
                    var key = new RSAKeyPair("10001","","9c2899b8ceddf9beafad2db8e431884a79fd9b9c881e459c0e1963984779d6612222cee814593cc458845bbba42b2d3474c10b9d31ed84f256c6e3a1c795e68e18585b84650076f122e763289a4bcb0de08762c3ceb591ec44d764a69817318fbce09d6ecb0364111f6f38e90dc44ca89745395a17483a778f1cc8dc990d87c3");
                    password = encryptedString(key, password);
                    if(undefined!=operatorPwd &&null!=operatorPwd && ''!=operatorPwd){
                        operatorPwd = encryptedString(key, operatorPwd);
                    }
                }
                var content = "userId=" + userId + "&password=" + password + "&service=" + service + "&queryString=" + queryString+"&operatorPwd="+operatorPwd+"&operatorUserId="+operatorUserId+"&validcode="+validcode+"&passwordEncrypt="+passwordEncrypt;
                //var content = "userId=" + userId + "&password=" + password + "&service=" + service + "&queryString=" + queryString+"&operatorPwd="+operatorPwd+"&operatorUserId="+operatorUserId+"&validcode="+validcode;
                post(ePortalUrl + "login", content, callback);
            },
            keepalive : function(userIndex,callback) {
                /* 2.保活 */
                var content = "userIndex=" + userIndex;
                post(ePortalUrl + "keepalive", content,callback);
            },
            getOnlineUserInfo : function(userIndex,callback) {
                /* 3.获取在线用户信息 */
                var content = "userIndex=" + userIndex;
                post(ePortalUrl + "getOnlineUserInfo", content,callback);
            },
            freshOnlineUserInfo : function(userIndex,callback) {
                var content = "userIndex=" + userIndex;
                post(ePortalUrl + "freshOnlineUserInfo", content,callback);
            },
            logout : function(userIndex,callback) {
                /* 4.下线 */
                var content = "userIndex=" + userIndex;
                post(ePortalUrl + "logout", content,callback);
            },
            loginWithQrCode : function(qrCode, queryString,callback) {
                /* 5.二维码认证 */
                var content = "qrCode=" + qrCode + "&queryString=" + queryString;
                post(ePortalUrl + "loginWithQrCode", content,callback);
            },
            visitorReg : function(phoneNum, authCode,validcode,callback) {
                /* 6.访客注册 */
                var content = "phoneNum=" + phoneNum + "&authCode=" + authCode+"&validcode="+validcode;
                post(ePortalUrl + "visitorReg", content,callback);
            },
            pageInfo : function(queryString,callback) {
                /* 7.获取页面显示信息 */
                var content = "queryString=" + queryString;
                post(ePortalUrl + "pageInfo", content,callback);
            },
            registerMac : function(mac, userIndex,callback) {
                /* 8.注册MAC快速认证 */
                var content = "mac=" + mac + "&userIndex=" + userIndex;
                post(ePortalUrl + "registerMac", content,callback);
            },
            cancelMac : function(mac, userIndex,callback) {
                /* 9.取消MAC快速认证 */
                var content = "mac=" + mac + "&userIndex=" + userIndex;
                post(ePortalUrl + "cancelMac", content,callback);
            },
            cancelMacWithUserNameAndMac : function(userId, mac,callback) {
                /* 9.取消MAC快速认证 */
                var content = "userId=" + userId + "&usermac=" + mac;
                post(ePortalUrl + "cancelMacWithUserNameAndMac", content,callback);
            },
            /*10.使用用户名密码下线所有用户*/
            logoutByUserIdAndPass:function (userId,pass,callback){
                var content = "userId=" + userId + "&pass=" + pass;
                post(ePortalUrl + "logoutByUserIdAndPass", content,callback);
            },
            /*11.切换服务*/
            switchService:function (userIndex,serviceName,callback){
                var content = "userIndex=" + userIndex + "&serviceName=" + serviceName;
                post(ePortalUrl + "switchService", content,callback);
            },
            //获取服务
            getServices:function(queryString,callback){
                post(ePortalUrl+"getServices" + "&queryString=" + queryString,'',callback);
            },
            registerNetWorkProtocol:function(userId,callback){
                var content = "userId=" + userId;
                post(ePortalUrl+"registerNetWorkProtocol",content,callback);
            },
            validateUserName:function(userId,userName,callback){
                var content = "userId=" + userId+"&userName="+userName;
                post(ePortalUrl+"validateUserName",content,callback);
            },
            modifyPass:function(userId,pass,callback){
                var content = "userId=" + userId+"&pass="+pass;
                post(ePortalUrl+"modifyPass",content,callback);
            }
    };
})();
  • 写回答

1条回答 默认 最新

  • 有问必答小助手 2021-10-14 10:26
    关注

    你好,我是有问必答小助手,非常抱歉,本次您提出的有问必答问题,技术专家团超时未为您做出解答


    本次提问扣除的有问必答次数,将会以问答VIP体验卡(1次有问必答机会、商城购买实体图书享受95折优惠)的形式为您补发到账户。


    因为有问必答VIP体验卡有效期仅有1天,您在需要使用的时候【私信】联系我,我会为您补发。

    评论

报告相同问题?

问题事件

  • 系统已结题 10月20日
  • 创建了问题 10月12日

悬赏问题

  • ¥15 #MATLAB仿真#车辆换道路径规划
  • ¥15 java 操作 elasticsearch 8.1 实现 索引的重建
  • ¥15 数据可视化Python
  • ¥15 要给毕业设计添加扫码登录的功能!!有偿
  • ¥15 kafka 分区副本增加会导致消息丢失或者不可用吗?
  • ¥15 微信公众号自制会员卡没有收款渠道啊
  • ¥15 stable diffusion
  • ¥100 Jenkins自动化部署—悬赏100元
  • ¥15 关于#python#的问题:求帮写python代码
  • ¥20 MATLAB画图图形出现上下震荡的线条