Drupal Android 应用程序登录持久性

2023-12-24

我已经成功设置了一个 Android 应用程序,可以登录到我的 drupal 网站。

我的问题是登录的用户会话不会持续很长时间。该网站清楚地显示我的用户已登录该网站,但在一个小时左右的时间内,该用户不再在该网站上显示为活动状态。 (我猜测是因为我不太清楚。)

谁能深入了解为什么会发生这种情况?

代码如下:

protected HttpResponse doInBackground(Void... params) {
// TODO Auto-generated method stub
    HttpClient httpClient   =   new DefaultHttpClient();
    HttpPost httpPost       =   new HttpPost("http://mystestsite.com/testpoint/user/login");

        // TODO Auto-generated method stub
        try{
            List<NameValuePair> nameValuePairs  =   new ArrayList<NameValuePair>();
            nameValuePairs.add( new BasicNameValuePair("password", "guest") );
            nameValuePairs.add( new BasicNameValuePair("username", "guest") );
            httpPost.setEntity( new UrlEncodedFormEntity(nameValuePairs));

            //Execute HTTP post request
            response    =   httpClient.execute(httpPost);

            Log.i("SEEMS TO WORK", response.toString());
            Log.v("CODE", httpPost.getRequestLine().toString() + " - " + response.toString());

        }catch(Exception e){
            Log.e("HTTP ERROR", e.toString());
        }
return response;
}

所以这听起来像是您如何设置 cookie 的问题。当我做这种事情时,我通常只是查看我的 http 标头,直到它们看起来与从 Web 浏览器发送的标头相同。问题是知道网络浏览器和 Android 应用程序正在发送什么,所以这里有一些可以尝试的东西。

这不一定是您问题的代码解决方案,但可能会有所帮助。

使用 Charles(很棒的工具)http://www.charlesproxy.com/ http://www.charlesproxy.com/为了这。不,我与该公司没有任何联系,它只是一个很棒的工具。

Charles 中有一个称为反向代理的功能,基本上它允许您将流量通过 Charles 反弹到您的 drupal 服务器,并且您可以在流量流入和流出您的应用程序时对其进行检查。

使用 charles,您可以嗅探来自网络浏览器的良好请求是什么样子,然后您可以嗅探来自 Android 应用程序的请求是什么样子。比较两者,您可以看到您的应用程序在哪里严重影响了请求标头。

调试阶段是这样的:

一旦您设置了 Charles,请访问您的 drupal 服务器几次并检查您从浏览器看到的请求/响应的结构。

然后从 Android 应用程序中点击您的服务几次并记下差异。也许 cookie 没有通过,也许它格式错误,也许标头还有其他问题。这将使您了解需要做什么才能让 Drupal 接受请求。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Drupal Android 应用程序登录持久性 的相关文章

  • StrictMode 策略违规:我的应用程序中存在 android.os.strictmode.LeakedClosableViolation?

    Android 开发新手 第一次在我的应用程序上尝试 StrictMode 我注意到以下内容 并想知道这是否是我的应用程序或库中的问题 我不太清楚 谢谢你 D StrictMode StrictMode policy violation a
  • CakePHP 身份验证插件身份关联

    我正在使用 CakePHP 3 8 并迁移到身份验证插件 https book cakephp org authentication 1 1 en index html https book cakephp org authenticati
  • 在 Android Studio 中,为什么我必须在模拟器中单击“运行应用程序”两次才能启动应用程序?

    在 Android Studio 中 当我按播放按钮在 Android 模拟器上安装并运行应用程序时 大约 5 10 秒后 我在屏幕底部收到一条消息 显示 安装成功 但应用程序实际上并未运行在模拟器上 我必须再次按下播放按钮 这是非常令人沮
  • Android - 从资产中解析巨大(超大)JSON 文件的最佳方法

    我正在尝试从资产文件夹中解析一些巨大的 JSON 文件 我如何加载并添加到 RecyclerView 我想知道解析这种大文件 大约 6MB 的最佳方法是什么 以及您是否知道可以帮助我处理此文件的良好 API 我建议您使用GSON lib h
  • 无法获取log.d或输出Robolectrict + gradle

    有没有人能够将 System out 或 Log d 跟踪从 robolectric 测试输出到 gradle 控制台 我在用Robolectric Gradle 测试插件 https github com robolectric robo
  • 带有 EditText 和 Spinner 的对话框

    我有一个按钮 单击后会弹出一个对话框 我希望对话框有一个EditText and a Spinner对话框内 我不知道如何设置它的视图 我有一个代码AlertDialog它有效 只是EditText and Spinner我需要将其放入其中
  • 如何使用 Cordova 获取当前安装的应用程序的版本?

    我已经找到了应用程序可用性插件 https github com ohh2ahh AppAvailability它主要检查用户是否在其设备上安装了某个应用程序 是否有可能获得应用程序的当前版本 开发者名称 重要 以及所有可能的信息 一般来说
  • Android:捕获的图像未显示在图库中(媒体扫描仪意图不起作用)

    我遇到以下问题 我正在开发一个应用程序 用户可以在其中拍照 附加到帖子中 并将图片保存到外部存储中 我希望这张照片也显示在图片库中 并且我正在使用媒体扫描仪意图 但它似乎不起作用 我在编写代码时遵循官方的Android开发人员指南 所以我不
  • 是否有 ADB 命令来检查媒体是否正在播放

    我想使用 ADB 命令检查根植于终端的外部设备中是否正在播放音频 视频 我无法找到任何 ADB 命令 如果有 我尝试过 adb shell dumpsys media player 我想要一个命令来指定视频是否正在运行 您可以使用以下命令查
  • 无法展开 RemoteViews - 错误通知

    最近 我收到越来越多的用户收到 RemoteServiceException 错误的报告 我每次给出的堆栈跟踪如下 android app RemoteServiceException Bad notification posted fro
  • 原色(有时)变得透明

    我正在使用最新的 SDK 版本 API 21 和支持库 21 0 2 进行开发 并且在尝试实施新的材料设计指南时遇到了麻烦 材料设计说我需要有我的primary color and my accent color并将它们应用到我的应用程序上
  • 如何在PreferenceActivity中添加工具栏

    我已经使用首选项创建了应用程序设置 但我注意到 我的 PreferenceActivity 中没有工具栏 如何将工具栏添加到我的 PreferenceActivity 中 My code 我的 pref xml
  • 如何默认在 ActionOpenDocument 意图中显示“内部存储”选项

    我需要用户选择一个自定义文件类型的文件 并将其从 Windows 文件资源管理器拖到 Android 设备上 但默认情况下内部存储选项不可用 当我使用以下命令启动意图时 var libraryIntent new Intent Intent
  • 尝试在 ubuntu 中编译 android 内核时出错

    我正在尝试从源代码编译 Android 内核 并且我已经下载了所有正确的软件包来执行此操作 但由于某种原因我收到此错误 arm linux androideabi gcc error unrecognized command line op
  • Android Studio 0.4.3 Eclipse项目没有gradle

    在此版本之前 在 Android Studio 中按原样打开 Eclipse 项目似乎很容易 无需任何转换 我更喜欢 Android Studio 环境 但我正在开发一个使用 eclipse 作为主要 IDE 的项目 我不想只为这个项目下载
  • 字符串数组文本格式化

    我有这个字符串 String text Address 1 Street nr 45 Address 2 Street nr 67 Address 3 Street nr 56 n Phone number 000000000 稍后将被使用
  • Android访问远程SQL数据库

    我可以直接从 Android 程序访问远程 SQL 数据库 在网络服务器上 吗 即简单地打开包含所有必需参数的连接 然后执行 SQL 查询 这是一个私人程序 不对公众开放 仅在指定的手机上可用 因此我不担心第三方获得数据库访问权限 如果是这
  • 实现滚动选择 ListView 中的项目

    我想使用 ListView 您可以在其中滚动列表来选择一个项目 它应该像一个 Seekbar 但拇指应该是固定的 并且您必须使用该栏来调整它 我面临的一个问题是 我不知道这种小部件是如何调用的 这使得我很难搜索 所以我制作了下面这张图片 以
  • Firebase 添加新节点

    如何将这些节点放入用户节点中 并创建另一个节点来存储帖子 我的数据库参考 databaseReference child user getUid setValue userInformations 您需要使用以下代码 databaseRef
  • Crashlytics 出现 Android Studio 构建错误

    我正在尝试将 CrashLytics 与 Android Studio 和 gradle 一起使用 但出现一个令人困惑的错误 java lang NoSuchMethodError 我的 build gradle 是 buildscript

随机推荐

  • 从 VBA 定义的宏创建 PowerPoint 加载项

    因此 我在 PowerPoint 演示文稿中创建了一个宏 并且希望其他人可以轻松使用该宏 根据我收集的信息 最好的方法是创建一个Add in 我看到几篇文章指出要执行以下操作 但我仍然遇到问题 打开新的 PowerPoint 演示文稿 使用
  • 如何从一个项目创建多个apk?

    我有一个 android 项目 我需要在其中创建多个 apk 每个 apk 之间的唯一区别是包名称 例如 com my package name 和应用程序字符串名称 因此我可以在一台设备上安装该应用程序的多个实例 有更好的方法吗 我考虑过
  • PL/SQL:有什么技巧可以避免对象的克隆吗?

    如果我们将一个对象变量分配给 pl sql 中的其他对象变量 则该对象将被克隆 因为 pl sql 不支持引用 例如 以下代码将打印两个不同的句子 create or replace type cla as object class wou
  • 在 Firebase Storage Swift 中使用图像引用数据库中的 Firebase 用户

    通常我可以在网上找到这个问题的答案 但由于它太新了 我一直遇到麻烦 当我让用户登录应用并为其个人资料选择 4 5 张图片时 如何将这些图像存储在 Firebase 存储中 并在 Firebase 数据库中将这些图像引用给该用户 Thanks
  • 如何在php中制作活动导航栏?

    您好 我正在尝试使我的导航栏在 php 中处于活动状态 以便用户可以知道他们所在的页面 我是php新手 对它了解不多 那么如何在此代码中添加 class active 来创建活动导航栏并在同一 index php 页面中显示所有页面 a h
  • ValueError:尺寸不匹配

    I use SciPy http scipy org and scikit学习 http scikit learn org stable 训练并应用多项式朴素贝叶斯分类器进行二进制文本分类 准确地说 我使用该模块sklearn featur
  • 序列化复杂类型 System.Nullable

    我想序列化 DateTime 以便当 DateTime 为 null 时我无法获取标签本身 我还设置了为上面指定的 bool 值 但我的问题是 DateTime 是值类型 它永远不会为 null 因此指定的 bool 值将始终为 true
  • Chrome 中的 Javascript 调试 - 对象名称?

    不知道 下图中圈出的东西 叫什么 使我的问题很难找到答案 下图中我圈出的东西叫什么名字 实际上是什么 myObject myFunction 是无关紧要的 我希望能够将其写到控制台 我尝试过以下方法 console log sp outpu
  • Spring Boot 2 未序列化 LocalDateTime

    我最近尝试使用 spring boot 2 实现一个微服务 现在 每当我尝试返回一个包含java time LocalDateTime从我的 REST 服务中 LocalDateTime 被序列化为整数数组 就像这样 id 5bf1425f
  • JDBC SQL 数据库被锁定?

    我正在编写一个使用本地 SQL 数据库来存储数据的程序 我正在使用这里找到的驱动程序 https bitbucket org xerial sqlite jdbc https bitbucket org xerial sqlite jdbc
  • 在 Web 项目中使用 SOLR 的最佳方法是什么?

    好吧 我对 SOLR 和 Lucene 完全陌生 但已经让 Solr 在 Tomcat 6 x 下开箱即用地运行 并且刚刚浏览了一些基本的 Wiki 条目 我有几个问题 也需要一些建议 Solr 可以索引文件 XML CSV 中的数据 也可
  • Apple Watch 应用程序可以与 Apple TV 交互吗?

    我正在寻找解决方案 甚至是关于在之间共享数据 发送信号等的可能性的线索Apple Watch应用程序和Apple TV app 就我而言 我有一个应用程序可以使用以下方法进行一些计算Apple Watch我希望这些计算能够对Apple TV
  • 如何让乘客配置重新启动应用程序正常工作?

    Ubuntu 14 04 上的 Rails 4 1 带有 rbenv 和 ruby 2 2 1 将 capistrano 与 capistrano passenger gem 一起使用 但最后重新启动失败 INFO 8213c63a Run
  • 在Python中向信号添加噪声

    我想向我在 Python 中模拟的 100 个 bin 信号添加一些随机噪声 使其更加真实 在基本层面上 我的第一个想法是逐个容器 生成某个范围内的随机数 然后从信号中添加或减去该数字 我希望 因为这是Python 可能有一种更智能的方法通
  • XInitThreads() 的缺点是什么?

    I know XInitThreads 将允许我从主线程以外的线程调用 X 服务器 如果我想使 Xlib 中的并发线程支持是必要的使用 Qt 从辅助线程调用 OpenGL http doc qt digia com qq qq06 glim
  • Restful 是仅适用于 Web 服务还是同时适用于 Web 服务和网页?

    我读了很多 PHP 的 Restful 教程 我不想深入探讨为什么我不使用RoR 这是因为团队对PHP更加熟悉 因为我们计划未来扩展 API 所以我了解到实现 Restful Web 服务非常重要 我看过诸如此类的教程 http www g
  • 在什么情况下,c++析构函数不会被调用? [关闭]

    就目前情况而言 这个问题不太适合我们的问答形式 我们希望答案得到事实 参考资料或专业知识的支持 但这个问题可能会引发辩论 争论 民意调查或扩展讨论 如果您觉得这个问题可以改进并可能重新开放 访问帮助中心 help reopen questi
  • tools.jar 似乎不在 Windows 8 上的 Android Studio 类路径中

    我安装了 Android Studio 但它给了我错误 我需要安装 JDK 但 JDK 已经安装了 然后我意识到它要求安装64位版本的JDK 无论如何 我刚刚下载了最新的 JDK 64 位版本并在环境变量中设置了以下内容 但 Android
  • 如何让 docker-machine 在特定位置创建虚拟机

    我的开发机器是一台笔记本电脑 配有小型 SSD 和巨大的外部磁盘 理想情况下 我希望 docker machine 使用外部驱动器 而不是填满我的内部磁盘 我知道我可以用安装等方式破解它 但是有没有办法让 docker machine 命令
  • Drupal Android 应用程序登录持久性

    我已经成功设置了一个 Android 应用程序 可以登录到我的 drupal 网站 我的问题是登录的用户会话不会持续很长时间 该网站清楚地显示我的用户已登录该网站 但在一个小时左右的时间内 该用户不再在该网站上显示为活动状态 我猜测是因为我