很多项目对安全的要求很高,这样的项目大多会对接口进行一些特别的处理,防止其他人随意访问,泄露信息,具体原理如下
1,前端根据用户名等信息访问登录接口。
2,登陆接口对数据库查询,如是已注册用户,就返回登陆成功的字符(例如:%%%),同时返回一个唯一标识(例如:###)。
3,前端拿到登陆%%%后,知道登陆成功,做其他跳转动作的同时,把####放到cookie中。
4,访问本站其他接口的时候,ajax请求会自动把cookie同事发送,其他接口就能得到唯一标识,如果这个标识跟###不是匹配的,就代表本次请求是非法请求,这个时候接口不予以回应。
注意:第4步的时候有一个坑,如果我访问的请求时跨域的,同样认为是非法请求,因为跨域请求时不会把cookie中的内容发给接口的,这个时候就需要主动发送cookie来解决这个问题。