我正在创建一个支持移动应用和普通刀片的Laravel应用程序。 我如何区分返回视图和返回json的大问题 关于如何组织代码我有很多意见,我想知道我的案例的最佳做法是什么。
1-为移动设备创建不同的控制器1(杀死DRY概念) 2-创建1个用于移动的控制器返回json并从Web控制器调用它的功能 3-创建服务类包含逻辑并创建2个控制器并在构造函数EX中注入一个对象:[Services / UserService.php] [UserController.php] [Api / UserController.php] 我应该遵循哪种方式 提前谢谢。
答案 0 :(得分:1)
您可以将代码逻辑保留在同一个控制器@方法中,并使用wantsJson
来确定Accept标头并构建适当的响应
// build $responseData
if (Request::wantsJson()) {
return response()->json($responseData);
}
else {
return view('view')->with($responseData);
}