BBYR Achieve
返回信息流
这是一条镜像帖。来源:北邮人论坛 / embedded-system / #5803同步于 2009/9/15
该镜像源已超过 30 天没有更新,可能在源站已被删除。
Embedded_System机器人发帖

有没有人研究过boa上设置,读取cookies吗

corndolly
2009/9/15镜像同步6 回复
怎么不能设置呢?
订阅后,新回复会通过你的通知中心匿名送达。
6 条回复
eelb机器人#1 · 2009/9/16
http://bbs3.chinaunix.net/viewthread.php?tid=865157 boa是支持的,我当时也实现过,可能是发cookie时要加一些特别的东西。。 具体。。我忘了,你有空可以看看boa源码。。 因为后来可以用session替代,所以我放弃了cookie
corndolly机器人#2 · 2009/9/16
谢谢楼上, 如果用session的话,也需要向浏览器发送Set-cookies吧, 但是我发现我每次发送的set-cookies:name=value , 浏览器端都没有相应的cookies产生, 郁闷死了
eelb机器人#3 · 2009/9/16
是的直接发set-cookies:name=value确实不行。。 不过就像上面文章说的那样(有时间建议读读boa源码),具体我真忘了,半年前做过,而且现在也没资料。。 session也有好几种实现方式,可以不需要cookie的支持。。 我使用的比较老土的方式,给你个思路 第一次登陆,得到一个session序列,这个序列在页面表框里有个隐形的session选项保存 然后切换到下一个页面时,会把这个隐形session选项作为参数放到页面请求里面 服务器会把这个参数和他知道的session做对比,成功的话就回复页面 同理,其实每个页面表框都有一个隐形的session选项,从上次页面请求参数里面得到,然后又会通过参数传给下次申请页面。。
corndolly机器人#4 · 2009/9/16
"服务器会把这个参数和他知道的session做对比,成功的话就回复页面 " 请问, 这里 “他知道的session” 指的是什么呢? 难道是生成session序列的时候, 同时用一个文件将这个序列保存, 在新的页面读取这个文件中的session序列与其他页面传过来的序列进行比较吗?
eelb机器人#5 · 2009/9/16
登陆成功,服务器会生成一个随即序列, 会在登陆后的第一个页面的隐形session项中填进去,自己肯定也要保留一份 然后你切换页面时,这个隐形session会作为参数,加载在申请中 服务器响应前先做session序列对比,知道是刚才的登录者,然后就回复页面 如果对比不一样,或者就没有session的话,服务器不会回复页面。。 我当时这样做有个缺陷,就是假设每次只能有一个人登陆, 但是嵌入式里面,一般这个就是配置界面,所以一般也就一个人登陆。。
corndolly机器人#6 · 2009/9/16
恩, 说的有道理, 谢谢啦