求教两个关于 cookie 小白问题

2015-01-26 17:50:58 +08:00
 Registering

http学习中,,,,,,求教两个关于cookie小白问题。

第一个小白问题

使用cookie和session可以保持客户端登陆状态。

Cookie可以携带账号密码,有时, 会携带session id

但是这样看起来,体现不出“保持登陆状态”的“保持”二字啊,,,,

我的直(无)观(知)的理解中,这其中只体现出了“验证”

cookie的作用只是携带帐号密码,然后服务器验证用户帐号密码是否匹配。(当然cookie可以获得服务器更新的最新cookie,覆盖本地的cookie)

那么,是否可以这样,我每次的请求时,增加参数来发送账号密码(不是使用cookie),这样不也能“保持”(验证?)登陆状态?、

第二个小白问题

android在native中,使用httpclient或者httpurlconnection或者volley等等,保存的cookie路径,是否与webview保存的路径相同?

如果不同,

1)是否需要增加一步,把native中保存的cookie,读写到webview默认保存cookie的地方,让webview和native共享相同的cookie。

2)如果我的cookie保存在内存,不保存到本地(其实我不确定这样科学吗)

这样的话,我只需在native里将cookie保存到一个全局的变量里,然后在webview里面读取。

2931 次点击
所在节点    程序员
6 条回复
lynnworld
2015-01-26 17:59:07 +08:00
保持体现在cookie 和session有一定的过期时间.过期作废.
lynnworld
2015-01-26 18:03:45 +08:00
另外可搜:webview 共享cookie 解决第二个问题。
wzxjohn
2015-01-26 18:07:16 +08:00
谁告诉你 Cookie 必须要保存账号密码才能保持登陆状态的?!
nilennoct
2015-01-26 18:23:30 +08:00
一般cookie保存的是账户信息的hash吧,增加参数当然也能实现你说的验证的功能,但是这个参数保存在哪里、怎么在每次请求时都发送到服务器(跳转页面、form提交、ajax提交……),怎么优(sheng)雅(li)地实现还请好好考虑==

第二个问题见 @wzxjohn 所述
iyaozhen
2015-01-26 18:43:59 +08:00
第一个问题:谁告诉你把账号密码存进cookie的?不安全啊
cookie(值)会在每次http请求中带上,server端有处理的话(比如php session_start())以后再每次请求会有一个sessionid,这样就知道是谁了。http本身是无状态的,只有通过session来保存状态。

第二个问题,没做过安卓,不是太清楚。
lalalanet
2015-01-26 21:31:35 +08:00
你要保持多久登录状态,如果就是session超时时间内的,带上sessionid就完了。 如果禁用了cookie,这个sessionid自然会出现在POST/GET参数中。

如果你想保持超过session时间的登录状态,完全不是这么设计。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/165611

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX