本文以 TP-LINK 为例,讲解如何通过程序操作路由器。
在浏览器输入路由器地址 会要求输入密码 认证方式为 401
通过firebug 可看到 登录后 返回的响应头里有一个Authorization 字段 值为Basic xxxxxxxxxxx…….
这个就是登录的时候输入的用户名和密码
查看路由器管理界面的 html 发现 管理路由器断线和链接的文件是/userRpm/StatusRpm.htm
而 断线 按钮 的响应链接 为/userRpm/StatusRpm.htm?Disconnect=断 线&wan=1
现在我们用程序把Authorization 加到响应头里 发送到/userRpm/StatusRpm.htm?Disconnect=断 线&wan=1 就可以让路由器断线了
参数 “断 线” 可能需要转码 我的路由器是 utf8 的
java 示例代码:
// 生成urlURL url = new URL(“http://192.168.1.1:8090/userRpm/StatusRpm.htm?Disconnect=%E6%96%AD%20%E7%BA%BF&wan=1”);// 打开链接URLConnection connection = url.openConnection();// 把 Authorization 字段 加到响应头里connection.setRequestProperty(“Authorization”, “Basic ZnVoYW53OkpvaG4zNTc1NDA1NzQ=”); // 发送数据connection.connect();// 接收返回,香港服务器,不知道为什么不接收返回,美国服务器,就没有效果。。。connection.getHeaderFields();,美国服务器回避现实的人,未来将更不理想。