android - 登录页面重定向上的jsoup状态代码

标签 android jsoup

我正在尝试向服务器发出测试请求以确定我的 session ID 是否仍然有效:

Connection.Response testRequest = Jsoup.connect(URL)
                        .method(Method.GET)
                        .cookie(SESSION_KEY, sessionId)
                        .execute();

如果它仍然有效,我将访问我要访问的页面。但是,如果 sessionId 无效,我将被重定向到登录页面。

我的问题是,如果我检查 testRequest.statusCode(),它会说 200 a.k.a.“OK”,无论它是有效的 session ID 还是不是。

如果我使用无效 session ,我将被重定向(状态代码 302)到登录页面。但是 jsoup 似乎只在我被重定向后才捕获页面/状态。

有什么方法可以得到“第一个”状态码吗?或者我应该为此使用 HttpClient 而不是 jsoup?

最佳答案

如果有人感兴趣,这是我的解决方案:

Connection.Response testRequest = Jsoup.connect(URL)
                    .method(Method.GET)
                    .followRedirects(false) // <-- did the trick
                    .cookie(SESSION_KEY, sessionId)
                    .execute();

关于android - 登录页面重定向上的jsoup状态代码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23920836/

相关文章:

java - 如何使用java和jsoup解析HTML文本和链接

java - 在 Java 项目中运行示例代码

java - 显示 Jsoup 元素

android - 在 Android 的 ScrollView 内的 View 中进行自定义位图 blitting 时,如何确定是否会在屏幕外绘制

android - 如何忽略带有房间的实体字段

android - 我可以作为新应用程序或在我的应用程序之外启动 Activity 吗?

html-parsing - jsoup的java或jdk版本要求

Android:将文件保存到内部数据时需要 BufferedOutputStream 吗?

java - 发送命令后建立套接字连接等待响应

android - 在 Android 上使用 JSoup 在不同的行中提取相同 html 标签的文本