情景再现:我们做api接口的时候需要做token验证,防止其他恶意访问导致接口或者数据库错误,步骤,代码及思维逻辑如下仅供参考:
1.我们后端需要在用户登录的时候将已生成好的token随着用户info传给前端,前端才能拿到token,然后叫前端获取到的token放在header请求头里面,由于前端接口的请求标头几乎都是一致的,所以每个network里面的接口都含有前端传给后端的token,咱们后端就可以在请求头里面拿到这个token。

每个接口的header头都含有这个token

2.现在我们已经看见前端放在header头里token了,我们来到自己的工程代码,就可以拿到token,我们来到所有接口都必须要访问的base文件,比如:上面图片上的user_login.html这个接口
(user文件下的login方法,不要问为什么这样写接口,公司的大哥教的,笑XDDD),我们来到这个文件下找到他的基础文件,我这边是一个叫做base的文件

3.来到这个文件找到你的入口方法(应该是入口方法。。。)我这边是一个叫做init的方法

在你的入口方法里面var_dump就能打出你想获取的token啦,只不过得申明,参考代码:
$server = isset($_SERVER) ? $_SERVER: "";
var_dump($server['HTTP_TOKEN']);
最好是将$server打印出来,看看token到底叫什么名字,我最开始就一直dump('token'),半天出不来,一直为null,经过检查才发现是HTTP_TOKEN,笑死XDDDDDDDDDD
4.正常来说应该是可以获取到这个token了,但是有一种情况就是没有在入口文件index.php添加一段声明代码,贴出供参考:
header('Access-Control-Allow-Headers:Token');
需要引入这个声明才能获取到header请求头里面的值,不然会报,无法加载响应数据
这篇博客详细介绍了在PHP中实现API接口Token验证的步骤。首先,后端在用户登录时生成并发送Token给前端,前端将其置于请求头中。接着,在后端的base文件中,通过初始化方法获取请求头中的Token。需要注意的是,确保在入口文件index.php中添加相应代码,以正确读取请求头中的值,否则可能导致无法获取Token。



5472

被折叠的 条评论
为什么被折叠?



