laravel - Laravel 子文件夹 - axios 帖子不起作用
问题描述
我正在尝试在子文件夹中使用 jwt 使用 Laravel 和 Vue 构建 SPA,但由于某种原因,我在加载页面时得到 405 Method Not Allowed。这是代码:
helper.js 中的方法
export default {
check() {
return axios.post('api/auth/check').then(response => {
return !!response.data.authenticated;
}).catch(error => {
return response.data.authenticated;
});
}
}
Vue 路线
router.beforeEach((to, from, next) => {
if (to.matched.some(r => r.meta.requiresAuth)){
return helper.check().then(response => {
if (!response){
return next({ path : '/unikit/login'});
}
return next();
});
}
if (to.matched.some(m => m.meta.requiresGuest)) {
return helper.check().then(response => {
if (response) {
return next({ path : '/unikit'});
}
return next();
});
}
return next();
});
export default router;
api中的路由:
Route::group(['prefix' => 'auth'], function () {
Route::post('/unikit/check','AuthController@check');
});
控制器方法:
public function check()
{
try {
JWTAuth::parseToken()->authenticate();
} catch (JWTException $e) {
return response(['authenticated' => false]);
}
return response(['authenticated' => true]);
}
还尝试在路线中删除“unikit”目录和斜线,但没有任何反应。
解决方案
经过两个小时的思考,我找到了解决方案。子文件夹需要修改 Provider 中 api 路由的前缀。Route::prefix('/subfolder/api')
问题解决了!谢谢大家的帮助!
推荐阅读
- excel - 从多个excel文件复制单元格并将它们粘贴到主文件中
- sql - Oracle 数据库 - With 语句与 With 语句并在脚本中创建表
- perl - 在 perl 中计算 2 个点(2 组坐标)
- react-native - 不变违反 react-native-webview
- reactjs - 使用 React Hooks 从 firebase 读取数据到数组中
- javascript - 无法在 highchart 中显示列的数据标签,显示格式不正确
- reactjs - 在 React 的组件树中依赖 Context.Provider 的存在是否是一种反模式?
- c# - d:DataContext=d:DesignInstance 不起作用,甚至是普通的 UWP 项目
- google-bigquery - 使用浮动数据点计算大查询中的余数
- c# - SqlCommandBuilder 生成不正确的更新语句