我是初学者,只是努力学习laravel
我使用设备API,但该API不提供身份验证功能,
因此,我想从HTTP标头验证用户[加载页面时,第一个用户必须在提示框中输入用户名和密码;如果用户有效,则页面将被加载]
我最大的努力和研究包括:
我的代码
$hearderauth = $request->header();
我从标题中获取了此信息
Array([host] => Array([0] => localhost:8000)[connection] => Array([0] => keep-alive)[cache-control] => Array([0] = > max-age = 0)[升级不安全请求] =>数组([0] => 1)[用户代理] =>数组([0] => Mozilla / 5.0(Windows NT 6.1; Win64; x64 )AppleWebKit / 537.36(KHTML,例如Gecko)Chrome / 75.0.3770.100 Safari / 537.36)[accept] => Array([0] => text / html,application / xhtml + xml,application / xml; q = 0.9,image /webp,image/apng,/;q=0.8,application/signed-exchange;v=b3)[accept-encoding] => Array([0] => gzip,deflate,br) [接受语言] =>数组([0] =>的en-US,连接; q = 0.9,CA; q = 0.8)[饼干] =>数组([0] => XSRF-TOKEN = eyJpdiI6Ikh4Tm40dFo1T2EwcjhCc1NLR2hTSnc9PSIsInZhbHVlIjoiYjVSZ25rdTh5SnEwSjZrbHRzdk05dWYxMTFrVTl0aXhMSldwbUhvMXhcL3Y5U2Y3QjJtcVpxXC9wY1pyRFdSMUJqIiwibWFjIjoiYjlkNjBmNDM2YWEzNWNjYjczZjRjZWVlYmJiNDg0NWMzMWY5NWQ2MzBiMzI2N2Y4NTI2NDJkMWM2OTc0MjEzNiJ9; laravel_session = eyJpdiI6Iml5TnZNSG1Bc0FcLzFHK1M4UXdpbE93PT0iLCJ2YWx1ZSI6IkZhVFFcL1l4ZmdVNVluTFBkbVNPc2 QzU0lsclp2QklBeGZyanZqa25WZ3d2T3pMR3QxSTgxSXU5OXA1d2FNYXZQIiwibWFjIjoiYmZlOWJhYzhlMDM1ZDFmZTY4ODAxYjk4N2Q0MWZNZNZNZNZNZT
如何将用户名和密码传递给此标头或 应该在控制器中写些什么来验证用户身份?
指导我如何面对这种情况?
简而言之->身份验证应通过HTTP标头完成
答案 0 :(得分:1)
众所周知,Laravel包括针对前端应用程序的身份验证支架。
但是还有另一种名为Passport的Laravel产品,可与Laravel一起提供API身份验证选项。
我不知道您是要在前端授权普通用户还是在构建没有前端认证的API。
无论哪种方式,建议您查看Basic Authentication和Laravel Passport上的文档。