jdecano/api

该包最新版本(dev-master)没有可用的许可证信息。

dev-master 2014-09-19 00:48 UTC

This package is not auto-updated.

Last update: 2024-09-24 08:12:18 UTC


README

这是一个简单的包,可以帮助您节省时间来创建基本的Laravel RESTful API。

如何安装

  1. 首先克隆此包。
  2. 编辑您的app.php文件,并将'Jdecano\Api\ApiServiceProvider'添加到您的可用服务提供者中。
  3. 发布配置 "php artisan config:publish jdecano/api"

用法

php artisan api:make

Eloquent Model e.g User: User

Api Version e.g 1.0: 2.0

配置

配置位于app/config/packages/jdecano/api/paths.php

return [
    'controller_target_path'   => app_path('controllers'),
    'routes_file'              => app_path('routes.php')
];

示例输出

运行命令后,将生成以下内容。

  1. 如果您使用User作为模型,它将创建ApiUserController.php
  2. 它将在路由文件的末尾添加 Route::resource('api/1.0/users','ApiUserController');

检索用户

方法 - GET

路径 - /api/1.0/users

参数

  1. limit = N

  2. index = 从哪里开始

  3. where = 通过列查找,例如 first_name|=|Dave

  4. like = 通过列搜索,例如 first_name=Dave

返回 - JSON

创建用户

方法 - POST

路径 - /api/1.0/users

参数 - 列名称。注意:请确保您的列是可填充的。

返回 - JSON

更新用户

方法 - PUT/PATCH

路径 - /api/1.0/users/{id}

参数 - 列名称。注意:请确保您的列是可填充的。

返回 - JSON

删除用户

方法 - DELETE

路径 - /api/1.0/users/{id}

返回 - JSON

身份验证

用过滤器包裹您的路由。以下是一个示例

基本HTTP身份验证

// routes.php
Route::group(array('before' => 'auth.basic', function()
{
    // Your route goes here
}));

// filters.php
Route::filter('auth.basic', function()
{
    return Auth::basic('username'); 
});

您可以从请求头中请求身份验证

// routes.php
Route::group(array('before' => 'secure_token', function()
{
    // Your route goes here
}));

// filters.php
Route::filter('secure_token', function()
{
    $username = Request::header('username');
    $token = Request::header('token');
    
    // Then create some kind of validation here
    // If fails then send a 403 Response
    // Easy!
});