我正在做一个关于laravel 5.1的项目,我想把它作为一个RESTFUL api,这样以后我们就可以使用相同的代码,并从移动应用程序或其他网站请求数据。该项目处于初始阶段,我想从一开始就使它正确。
假设我有一个简单的路由,它正在调用AdminController上的dashboard方法。因此,在登录后,它将管理员重定向到带有一些数据的仪表板页面。
/******************** Laravel Project ***********************/
//Routes.php
Route::group(['middleware' => 'auth'], function () {
Route::get('dashboard', 'AdminController@dashboard');
});
// AdminController
public function index(){
$data = 'Some Data';
return view( 'superadmin.dashboard')->with('data', $data );
}
现在我想在一个wordpress项目中获得相同的数据。我将如何使用这个api来获取数据变量(没有视图)?我不想为此创建另一种方法,是否有任何方法我可以使用相同的函数来获取数据作为json?
我在另一个论坛上读到我们可以像这样访问所有的REST数据。但是这行不通。
http://admin: admin123@example.dev/仪表盘
一如既往地感谢您的帮助
就我个人而言,我会创建一个应用程序作为API。在你的例子中,这是你的Laravel应用程序。
然后我将从Wordpress或移动应用程序向API发出HTTP请求。
我发现从API返回JSON更容易使用。Laravel让这变得很简单:
return Response::json(array(
'username' => 'superadmin',
'role' => 'admin',
'friends' => array(
'2345',
'884'
)
));
还有,不要这样发送你的用户名和密码。HTTP认证是不安全的。http://adrianotto.com/2013/02/why-http-basic-auth-is-bad/
我倾向于使用OAuth来保护我的api