【发布时间】:2021-11-16 19:09:57
【问题描述】:
我有一个带有登录系统的 laravel 应用程序,仅供实习生使用 和 我有一个网站,它使用 api 从/向 laravel 应用程序获取和发布数据
所以我想要,只有我的网站可以从/向 api 获取/发布数据 -> laravel 应用程序
现在,我已经使用电子邮件和密码为 api 创建了一个登录用户。我知道那不是正确的做法。
通过此登录凭据,网站从 api 获取不记名令牌(有效期 10 分钟)
使用此不记名令牌(ajax 调用的标头),网站调用每个 api 请求(get/post)
代码:
Ajax 调用获取 Bearer Token:
axios.post(data_source_url + "/auth/token", {'email' : 'api@email.de', 'password' : 'pw1'}).then((res) => {
document.cookie = 'bearer=' + res.data + ';expires=' ...
})
Laravel Api 路由:
Route::post('/auth/token', ['uses'=>'ApiController@getToken'])->name('api.getToken');
Route::get('/get', ['middleware'=>'auth:sanctum', 'uses'=>'Api\ApiController@read']);
Route::post('/send', ['middleware'=>'auth:sanctum', 'uses'=>'Api\ApiController@send']);
所以我想用不记名令牌进行授权,但是如何以正确/安全的方式从 api 发送和接收不记名令牌,因为我这样做的方式现在登录是完全不安全的
【问题讨论】:
标签: javascript laravel