Api routing
設定 routing
routes\api.php
Route::group(['prefix' => 'v1'], function () {
Route::get('user', 'Api\v1\UserController@index');
Route::get('user/{id}', 'Api\v1\UserController@show');
});
Route::group(['prefix' => 'v2'], function () {
Route::get('user', 'Api\v2\UserController@index');
Route::get('user/{id}', 'Api\v2\UserController@show');
});
建立 controller
$ php artisan make:controller Api\v1\UserController
$ php artisan make:controller Api\v2\UserController
- v1
app\Http\Controllers\Api\v1\UserController.php
namespace App\Http\Controllers\Api\v1;
use Illuminate\Http\Request;
use App\Http\Controllers\Controller;
use Response;
class UserController extends Controller
{
public function index()
{
return response()->json([
'namespace' => 'App\Http\Controllers\Api\v1',
'function' => 'index',
], 200);
}
public function show($userId)
{
return response()->json([
'namespace' => 'App\Http\Controllers\Api\v1',
'function' => 'show',
'userId' => $userId,
], 200);
}
}
- 回應結果
- v2
app\Http\Controllers\Api\v2\UserController.php
namespace App\Http\Controllers\Api\v2;
use Illuminate\Http\Request;
use App\Http\Controllers\Controller;
use Response;
class UserController extends Controller
{
public function index()
{
return response()->json([
'namespace' => 'App\Http\Controllers\Api\v2',
'function' => 'index',
], 200);
}
public function show($userId)
{
return response()->json([
'namespace' => 'App\Http\Controllers\Api\v2',
'function' => 'show',
'userId' => $userId,
], 200);
}
}
- 回應結果
Docs
參考來源