我正在做一个电子商务项目,使用网站的laravel-vue和移动应用程序的laravel-api,我想要关于管理api part的最佳方式或实施该项目的最佳方式的建议
这些是我对实现这一点的想法
1->对api和web使用相同的控制器,但担心复杂的逻辑和可扩展性
public function index(Request $request)
{
$users = User::all();
if ($request->wantsJson()) {
//return json-data for mobile app
}
return view('agents', compact('users'));
}2->为接口控制器创建单独的namespace。namespace App\Http\Controllers\Api\;
3->使用laravel创建api,并使用vue-cli/angular2创建客户端应用程序,以便移动应用程序和web应用程序可以使用相同的api。here concerned about SEO
欢迎提出任何建议。
谢谢
发布于 2017-04-08 04:15:00
最好的方法是将所有的业务逻辑转移到一些特殊的类中,让我们调用它们的服务。因此,您将能够在应用程序的不同部分中使用相同的逻辑。
您绝对应该将您的控制器与API控制器和web控制器分开。因此,您将能够对API和WEB部件使用不同的中间件。
例如,您可能有与某些前端单页面应用程序和WEB管理仪表板(您不需要SPA)连接的API,但使用相同的服务(没有任何代码重复)。
https://stackoverflow.com/questions/43063404
复制相似问题