官方微信公众平台

关于PHP项目中token和session随记


发布时间:2018-08-03

token也不是很高深的技术,关于token详细介绍可以百度,简单说它就是一种令牌和session差不多的机制,session几乎是每个web开发语言中自带的,而token还没有一个统一的标准,大部分是自己实现的。在App接口中由于使用session没有像在web页中使用session方便和一些灵活安全方面的考虑,大部分接口中开发都是用token来实现的,所以我在开发接口中优先实用了token来保持会话和权限控制,但实际的开发中,遇到的相当多的开发人员不知道是不是技术原因还是其他原因很排斥或不喜欢用token,导致底下人员怨声四起,介于此趁做新项目,决定把token换成session,下面是具体讲讲session在应用中的用法:
session是依赖cookie来实现的,而手机端对cookie又有很多问题,所以只能选用session_id来实现,操作流程:
手机端第一次请求服务器,服务器返回session_id,手机端把session_id保存下来,每次请求的时候通过URL或请求参数再把session_id返回给服务器,服务器通过session_id就可以得到当前session了。
有两点需要注意的:
1.session_id($sid)一定要在session_start()之前;
2.使用Thinkphp框架,需要在配置中把自动启动session关闭: 'SESSION_AUTO_START' => false,设置了这一步其他不是通过session_id获取session的,就要先手动启动session_start(或session('[start]'))才能调用session。

这就是session的简单介绍,刚开始token就叫session_id可能会更让人理解。说的还不够全面,具体开发中如有未知bug慢慢在完善。

技术总结:济宁远之航网络科技技术一部刘墩华

  • 专注于服务电商领域

  • 资深电商服务专家

  • 一对一专属会员经理

  • 365万用户诚意推荐

业务QQ:1014905292

业务电话:13053758877

客服电话:400-032-5039

服务时间:08:00 — 18:00

扫一扫了解详情

All Rights Reserved © 2014-2019 鲁ICP备14000487号-4 山东远之航信息技术有限公司 |

鲁公网安备 37081102000368号