如何通过API Laravel处理用户注册

Dia*_*ond 5 authentication laravel-4

我正在阅读和阅读有关Laravel中API开发的一些教程.我完全是API开发的新手,尽管我已经使用了Laravel.

从我经历的所有教程中,他们处理:登录,获取一些数据,更新信息,删除信息,甚至将一些信息插入数据库.

我的问题是这些教程都没有像用户注册那样处理.

Route::group(array('prefix' => 'api/v1', 'before' => 'auth.basic'), function()
{
    Route::resource('users', 'UsersController');
    Route::resource('messages', 'MessagesController');
});
Run Code Online (Sandbox Code Playgroud)

从上面的代码中,它假定用户必须已经注册才能获得对控制器的访问权限auth.basic.

所以,我的问题是:我如何处理注册?因为似乎我不会将它与上面的代码分组.

Mau*_*ice 3

您无法将注册路由放入具有 auth.basic 过滤器的路由组中。然后只有登录的用户才能注册。

所以你应该创建新的注册路线:

// Opens view to register form
Route::get('register', array('as'=>'register', 'uses'=>'UserController@getRegister'));
// Handles registering
Route::post('register', array('uses'=>'UserController@postRegister'));
Run Code Online (Sandbox Code Playgroud)

URL 将变为:http://yourhost/register

或者,如果您仍然想使用前缀,您可以分组:

Route::group(array('prefix'=>'api/v1'), function(){
  // Opens view to register form
  Route::get('register', array('as'=>'register', 'uses'=>'UserController@getRegister'));
  // Handles registration
  Route::post('register', array('uses'=>'UserController@postRegister'));
});
Run Code Online (Sandbox Code Playgroud)

URL 将变为:http://yourhost/api/v1/register

然后您在您的中创建一个getRegister()andpostRegister()方法UserController

<?php

class UserController extends BaseController{

 public function getRegister(){
   // Return register form
   return View::make('users.register');
 }

 public function postRegister(){
   // Validate post info and create users etc. 
 }
Run Code Online (Sandbox Code Playgroud)

有大量教程可以帮助您在 Laravel 中进行用户注册,

http://code.tutsplus.com/tutorials/authentication-with-laravel-4--net-35593