我有一个Laravel项目,在这个项目中,我通过检查request->wantsJson()来确定要返回的内容,从而对web路由和api路由使用相同的控制器。我正在使用内置的Auth进行web路由。
在前端,我使用jQuery/ajax来获取和post数据,但是我不确定如何在ajax调用中转发当前登录的用户,以便既可以对请求进行身份验证,又可以识别当前用户。
我想做的是在执行ajax调用时在请求头中附加某种临时session令牌,并通过middleware将其作为用户进行身份验证。
推荐的方法是什么?
发布于 2019-12-01 19:38:45
谢谢Tim的建议,但由于我还计划访问外部客户端的api,所以我想我需要一些令牌中间件。
我在所有api路由上使用tymon/jwt-auth解决了这个问题,并将其添加到我的user类中
公共函数getToken(){ return JWTAuth::fromUser($this);}
然后,我只需将其添加到ajax调用的标头中
标头:{
‘'Authorization':Bearer {{auth()->user()->getToken()}},'Content-Type':’应用程序/json‘,
‘'Accept':'application/json’
},
https://stackoverflow.com/questions/59111284
复制相似问题