关于get请求和token的一些疑问
场景:
User表 B表 C表 三个表
B表有字段userID用于关联User表 C表有bID用于关联B表
现在用户登陆后 通过UserID去查询B表信息,相应url例如:getBInfoByUserId?userId=1
这样如果当前登陆用户1 更改url为getBInfoByUserId?userId=2
这样就直接获取了2号用户的B表信息
-----------------------------------------
针对上面的问题
在用户登陆时 将用户信息存入Session中
在用户去请求getBInfoByUserId?userId=2时 校验session中的用户ID和请求参数中的userId是否匹配
解决了这个问题衍生出另一个问题:
这时候用户在查出了B表信息后 通过某条B表信息的ID去查询C表中的信息 url:getCInfoByBId?bId=1
这时候用户修改url为:url:getCInfoByBId?bId=10086 PS:Bid 10086不是1号用户相关的B表信息
这种场景下 如何防止这种一环一环的非法操作
Token是否能够解决这类问题?
我在网上查了查token的验证方式和过程 感觉实际和上面的session验证方式区别不大。