请教,面试的过程中,该怎样表达技术的知识点

jillerWong 发布于 2014/03/27 19:34
阅读 400
收藏 1
PHP
面试的过程中,遇到一些问题,有一些技术我已经掌握,举一个例子,cookie和session,但是要我表达的时候,口头能力却不足,谈吐不清,让人感觉逻辑思维很乱;在此希望前辈多多指点
加载中
0
ok_fish
ok_fish

难道是内向导致的?如果不是,那就是cookie和session你没真正弄懂,只是表面上好像的懂了而已吧。比如说如何实现类似qq一个帐号不能同时登录?session的工作原理是啥?

0
jillerWong
jillerWong

举例子说明,用户登陆前必须把用户名和密码提交到服务端,然后把密码通过MD5加密,加密后查询数据库的用户名和密码;然后和用户的用户名,密码做校验,校验没问题,开启session,把用户名和密码存储在session中,session把用户的的数据序列化存储在session_id里,如果用户再次登陆,通过ajax异步请求服务端,查询数据库,校验用户名,密码,最后查看session中是否存在用户名和密码,如果存在,返回浏览器,告诉用户已经登陆,不能再登陆

0
中山野鬼
中山野鬼

引用来自“何小马”的评论

难道是内向导致的?如果不是,那就是cookie和session你没真正弄懂,只是表面上好像的懂了而已吧。比如说如何实现类似qq一个帐号不能同时登录?session的工作原理是啥?

哈,这个是大实话。懂的,越内向,表达起来,越不同平常状态。

0
0x0001
0x0001

引用来自“Jerry_Wong”的评论

举例子说明,用户登陆前必须把用户名和密码提交到服务端,然后把密码通过MD5加密,加密后查询数据库的用户名和密码;然后和用户的用户名,密码做校验,校验没问题,开启session,把用户名和密码存储在session中,session把用户的的数据序列化存储在session_id里,如果用户再次登陆,通过ajax异步请求服务端,查询数据库,校验用户名,密码,最后查看session中是否存在用户名和密码,如果存在,返回浏览器,告诉用户已经登陆,不能再登陆

兄弟,如果是上面那个问题,你这个回答还真不是太好
在bs技术中,session是依赖cookie来实现的,session在服务端的表现为一个hash表(某些语言叫字典),通过把key放到cookie来实现的,要完成不能同时登陆这种情况,只需要让上次登陆的key失效就可以了,具体做法就是,每个用户保存唯一一个登陆key,每次登陆重新生成,覆盖到数据库就好,每次请求判断key是否和数据库一致就知道是不是被冲下去了

0
mallon
mallon
别忘了表达能力也是能力
返回顶部
顶部