首页 > 解决方案 > 使用 JSoup 上的“发布”请求登录并从网站检索数据

问题描述

我正在尝试创建一个登录到我学校成绩服务器并显示数据的应用程序。我要登录的网站是:“ https://portal.mcpsmd.org/public/

我已经根据这个stackoverflow问题编写了我的代码。这是我的具体情况的相关代码:

 Connection.Response loginForm = Jsoup.connect("https://portal.mcpsmd.org/public/")
                        .method(Connection.Method.GET)
                        .execute();

 Document document = Jsoup.connect("https://portal.mcpsmd.org/guardian/home.html/")
                        .data("account", "#######")
                        .data("pw","*******")
                        .cookies(loginForm.cookies())
                        .post();

System.out.println(document.title());

我以这种方式编写代码的原因是因为当我在学校页面上“检查元素”时,我看到了这个:

学校检查元素的屏幕截图

可以看到我学校使用的是“post”方式,登录请求在“/guardian/home.html”

我看过的许多 Stack Overflow 问题都告诉我使用这样的方法,我连接到登录请求并将我的用户名和密码作为数据发送给它。我完全正确吗?我正在尝试使用 JSoup 登录我学校的网站,所以在我看来,如果我执行“document.title()”它应该打印我已经登录后获得的页面名称。这个程序只打印名称登录屏幕页面。

我已经在这个项目上工作了将近两天,最初是从对 JSoup 的 0 知识开始的。对于使用 JSoup 登录网站的最佳方式,我将不胜感激。

标签: javaandroidjsoup

解决方案


推荐阅读