【问题标题】:Connecting to a REST API on Android via session id cookie and not JWT通过会话 id cookie 而不是 JWT 连接到 Android 上的 REST API
【发布时间】:2020-08-29 07:03:19
【问题描述】:

除了改造这件事,我找不到任何东西。是否使用了 Android 开发人员不使用的 cookie,或者为什么很难找到有关通过使用会话 id cookie 而不是 JWT 连接到 REST API 的任何信息?

此外,互联网上的大多数教程甚至都不使用 TLS。甚至不要提及用户关闭应用程序并且在他的下一个会话中没有可用的 cookie 的可能性。因此,从本地存储中存储和检索 session_id 字符串以供以后在后续连接中重用等无关紧要。

您能推荐一个原生 Android 实现吗?一些示例代码如何在 Android 应用程序中使用会话 id cookie 并将它们存储起来,以便用户可以关闭应用程序并稍后再次运行,他将重用存储的会话 id 并将 cookie 与 json 请求一起发送到远程服务器。

如果这是一些公开不可用的秘密信息,您能否推荐一些有关 udemy 的付费课程或他们做这些事情的地方,并教您在连接到 API 时如何在 Android 应用中存储和重用 cookie 的正确方法?

【问题讨论】:

    标签: java android json kotlin cookies


    【解决方案1】:

    Android 与浏览器的不同之处在于它不会为您管理 cookie。 cookie 只是一个标题。所以当你收到网络响应时,从响应头中取出令牌,保存在某个地方(我建议SharedPreferences),然后在以后的请求中使用它(我建议使用okhttp的拦截器:阅读thisthis )。

    【讨论】:

    • 设备上安装的其他应用程序是否可以在 SharedPreferences 中访问它,或者它是沙盒的并且仅适用于 1 个应用程序?
    • 默认情况下,SharedPreferences 被保存到应用程序私有文件夹中(就好像它是一个单独的 linux 用户一样),所以破解的唯一方法是使用有根设备。如果您正在构建一个银行应用程序并且这让您感到困扰,那么我建议您查看thisthis
    • 好的,谢谢。对于我的需求,它似乎是相当安全的。
    猜你喜欢
    • 1970-01-01
    • 2015-08-29
    • 1970-01-01
    • 2019-02-04
    • 1970-01-01
    • 2017-01-11
    • 1970-01-01
    • 1970-01-01
    • 2018-04-11
    相关资源
    最近更新 更多