使用 Laravel 快速开发API接口,新手必读

这篇文章仅为如何使用Laravel 5框架编写API,这是其中一种,如下使用的Laravel版本为5.4。php









建立项目

在本身的环境目录上使用composer安装laravel项目laravel

composer create-project laravel/laravel=5.4.* laravel-api --prefer-distgit


  • create-project  是使用 Composer 从现有的包中建立一个新的项目。这至关于执行了一个 git clone 或 svn checkout 命令后将这个包的依赖安装到它本身的 vendor 目录。
  • laravel/laravel=5.4.* 表示要安装laravel看框架,并指定为5.4以上的版本
  • laravel-api 是指定要安装的目录,好比想要安装到 blog 目录的话,那么能够把这一段替换成 blog
  • --prefer-dist 下载包的方式有两种:source 和 dist。对于稳定版本 composer 将默认使用 dist 方式。而 source 表示版本控制源 。 --prefer-dist 表示composer 将尽量的从 dist 获取,这将大幅度的加快在 build servers 上的安装。
composer建立Laravel项目


建立数据库和数据表

  • 新建数据库 laravel-apiweb

  • 更新数据库配置
    修改项目根目录的
    .env 文件(这个文件在Laravel安装好以后会自动生成,若是没有生成,请复制根目录的 .env.example 文件复制一份并重命名为 .env。后面有些laravel基础部分,在官方文档里有的将再也不复述,请直接去官方文档查看)。数据库

新建用户表json


建立 users api


CREATETABLE`users`(
 
`id`int(11) unsigned NOTNULLAUTO_INCREMENT,
 
`name`varchar(255)CHARACTERSET utf8 DEFAULTNULLCOMMENT'用户名',
 
`phone`varchar(20)CHARACTERSET utf8 NOTNULLDEFAULT''COMMENT'手机号码',
 
`created_at` timestamp NULLDEFAULTNULLCOMMENT'建立时间',
 
`updated_at` timestamp NULLDEFAULTNULLONUPDATECURRENT_TIMESTAMPCOMMENT'更新时间',
 
PRIMARYKEY(`id`)微信

)ENGINE=InnoDB DEFAULTCHARSET=utf8mb4 COMMENT='用户表';app


在 app\Models 新建 users 表模型composer


php artisan make:model Models/User

app\Models\User.php


建立控制器

php artisan make:cotroller UserController


app\Http\Controllers\UserController.php

新增 getUser()方法用来获取用户信息  UserController 


<?php

namespace App\Http\Controllers;

use App\User;

use Illuminate\Http\Request;


class UserController extends Controller{

   
public function getUser ($id) {
       
$user = User::find($id);
       
return response()->json($user);
   
}

}


API路由

若是仔细看根目录下的 routes 即路由目录,就会发现有4个php文件,其中 web.php 是访问web页面时的路由,而 api.php 则是访问API时的路由。
下面咱们给
UserController getUser() 方法写一个路由吧!

routes\api.php

<?php

use Illuminate\Http\Request;


Route::post('/user/{id}','UserController@getUser');


访问API

那么如今开始访问写好的这个API吧
访问Laravel的API路由,是须要在域名后面加上api,与web路由不一样

http://xxxxx.com/api/user/1

        
          
  
         
         
          
          
                   
          
  
         
            
              
      
             
             
              
              
                       
              
      
             

看完本文有收获?点赞、分享是最大的支持!


本文分享自微信公众号 - Laravel技术社区(Laravel360)。
若有侵权,请联系 support@oschina.cn 删除。
本文参与“OSC源创计划”,欢迎正在阅读的你也加入,一块儿分享。

相关文章
相关标签/搜索