我正在尝试使用登录名和密码登录到远程服务器,并且已完成。但是当我用密码删除请求并登录并重新启动我的应用程序时,我无法登录到同一台服务器。我被告知我可以这样做,因为cookie必须自动存储。我做错了什么?
例如,我们有DefauktHttpClient。如何在那里存储cookie?存储它们的周期是什么?如果我理解正确,cookie可以帮助用户保持登录服务器。 (我们正在考虑从移动设备登录)。我的目标不是为每次操作发送用户的登录名/密码。如何正确地做到这一点?
答案 0 :(得分:0)
Cookie是表单键:值中HTTP标头中的值。有关已登录用户的信息通常以某种生成的登录密钥的形式存储在此处。例如,cookie将是userID:1234
您也可以编写自己的简单cookie管理器。发送登录请求后,使用HttpURLConnection
方法(或类似方法)到getHeaderFields().get("set-cookie")
。在下次请求使用setRequestProperty("Cookie", savedCookies)
之前保存所有Cookie或您需要的Cookie。为了保存,您可以使用SharedPreferences。