2015-07-21 75 views
1

我正在laravel 5.1的一个项目上工作,我想使它成为一个RESTful的API,以便我们可以使用相同的代码并从移动应用程序或其他网站请求数据。该项目正处于初始阶段,我想从一开始就把它改正。向Laravel API请求数据到wordpress

假设我有一个简单的路由,它正在调用AdminController上的仪表板方法。因此,登录后将其重定向到带有一些数据的仪表板页面。

/******************** Laravel Project ***********************/ 
     //Routes.php 
      Route::group(['middleware' => 'auth'], function() { 
       Route::get('dashboard', '[email protected]'); 
      }); 

     // AdminController 
     public function index(){ 
      $data = 'Some Data'; 
      return view('superadmin.dashboard')->with('data', $data); 
     } 

现在我想在wordpress项目中得到相同的数据。我将如何使用这个API来获取数据变量(没有视图)?我不想创建另一个方法,有没有什么办法可以使用相同的函数来获取数据作为JSON?

我在另一个论坛上读到,我们可以像这样访问所有的数据。但是这不起作用。

http://admin:[email protected]/dashboard

一如既往感谢您的帮助:)

回答

0

就个人而言,我会创建一个应用程序,该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。

+0

谢谢你的回答,我想你是对的,所以我们假设我创建一个Laravel应用程序作为一个纯粹的restfull api,它只会输出所有用户的json响应。现在我也想要相同的laravel应用程序来显示结果作为引导页面。那么我将如何使用视图来显示这些结果? –