gmnon.cn-疯狂蹂躏欧美一区二区精品,欧美精品久久久久a,高清在线视频日韩欧美,日韩免费av一区二区

站長資訊網
最全最豐富的資訊網站

基于laravel制作API接口

基于laravel制作API接口

關于API

API(Application Programming Interface,應用程序編程接口)是一些預先定義的函數,目的是提供應用程序與開發人員基于某軟件或硬件得以訪問一組例程的能力,而又無需訪問源碼,或理解內部工作機制的細節。
需要注意的是:API有它的具體用途,我們應該清楚它是干啥的。訪問API的時候應該輸入什么。訪問過API過后應該得到什么。

在開始設計API時,我們應該注意這8點
后續的開發計劃就圍繞著這個進行了。

1.Restful設計原則
2.API的命名
3.API的安全性
4.API返回數據
5.圖片的處理
6.返回的提示信息
7.在線API測試文檔
8.在app啟動時,調用一個初始化API獲取必要的信息

用laravel開發API

就在我上愁著要不要從零開始學習的時候,找到了這個插件dingo/api那么現在就來安裝吧!
首先一定是下載的沒錯
在新安裝好的laravel的composer.json加入如下內容

然后打開cmd執行

composer update

在config/app.php中的providers里添加

AppProvidersOAuthServiceProvider::class, DingoApiProviderLaravelServiceProvider::class, LucaDegasperiOAuth2ServerStorageFluentStorageServiceProvider::class, LucaDegasperiOAuth2ServerOAuth2ServerServiceProvider::class,

在aliases里添加

'Authorizer' => LucaDegasperiOAuth2ServerFacadesAuthorizer::class,

修改app/Http/Kernel.php文件里的內容

protected $middleware = [LucaDegasperiOAuth2ServerMiddlewareOAuthExceptionHandlerMiddleware::class, ]; protected $routeMiddleware = [   'oauth' => LucaDegasperiOAuth2ServerMiddlewareOAuthMiddleware::class,   'oauth-user' => LucaDegasperiOAuth2ServerMiddlewareOAuthUserOwnerMiddleware::class,   'oauth-client' => LucaDegasperiOAuth2ServerMiddlewareOAuthClientOwnerMiddleware::class,   'check-authorization-params' => LucaDegasperiOAuth2ServerMiddlewareCheckAuthCodeRequestMiddleware::class,   'csrf' => AppHttpMiddlewareVerifyCsrfToken::class, ];

然后執行

php artisan vendor:publish

php artisan migrate

在.env文件里添加這些配置

API_STANDARDS_TREE=x API_SUBTYPE=rest API_NAME=REST API_PREFIX=api API_VERSION=v1 API_CONDITIONAL_REQUEST=true API_STRICT=false API_DEBUG=true API_DEFAULT_FORMAT=json

修改appconfigoauth2.php文件

'grant_types' => [   'password' => [     'class' => 'LeagueOAuth2ServerGrantPasswordGrant',     'access_token_ttl' => 604800,     'callback' => 'AppHttpControllersAuthPasswordGrantVerifier@verify',   ], ],

新建一個服務提供者,在app/Providers下新建OAuthServiceProvider.php文件內容如下

namespace AppProviders;   use DingoApiAuthAuth; use DingoApiAuthProviderOAuth2; use IlluminateSupportServiceProvider;   class OAuthServiceProvider extends ServiceProvider {   public function boot()   {     $this->app[Auth::class]->extend('oauth', function ($app) {       $provider = new OAuth2($app['oauth2-server.authorizer']->getChecker());         $provider->setUserResolver(function ($id) {         // Logic to return a user by their ID.       });         $provider->setClientResolver(function ($id) {         // Logic to return a client by their ID.       });         return $provider;     });   }     public function register()   {     //   } }

然后打開routes.php添加相關路由

//Get access_token Route::post('oauth/access_token', function() {    return Response::json(Authorizer::issueAccessToken()); });   //Create a test user, you don't need this if you already have. Route::get('/register',function(){   $user = new AppUser();    $user->name="tester";    $user->email="test@test.com";    $user->password = IlluminateSupportFacadesHash::make("password");    $user->save(); }); $api = app('DingoApiRoutingRouter');   //Show user info via restful service. $api->version('v1', ['namespace' => 'AppHttpControllers'], function ($api) {   $api->get('users', 'UsersController@index');   $api->get('users/{id}', 'UsersController@show'); });   //Just a test with auth check. $api->version('v1', ['middleware' => 'api.auth'] , function ($api) {   $api->get('time', function () {     return ['now' => microtime(), 'date' => date('Y-M-D',time())];   }); });

分別創建BaseController.php和UsersController.php內容如下

//BaseController namespace AppHttpControllers;   use DingoApiRoutingHelpers; use IlluminateRoutingController;   class BaseController extends Controller {   use Helpers; }   //UsersController namespace AppHttpControllers;   use AppUser; use AppHttpControllersController;   class UsersController extends BaseController {     public function index()   {     return User::all();   }     public function show($id)   {     $user = User::findOrFail($id);     // 數組形式     return $this->response->array($user->toArray());   } }

隨后在app/Http/Controllers/Auth/下創建PasswordGrantVerifier.php內容如下

namespace AppHttpControllersAuth; use IlluminateSupportFacadesAuth;   class PasswordGrantVerifier {   public function verify($username, $password)   {      $credentials = [       'email'  => $username,       'password' => $password,      ];        if (Auth::once($credentials)) {        return Auth::user()->id;      }        return false;   } }

打開數據庫的oauth_client表新增一條client數據

INSERT INTO 'oauth_clients' ('id', 'secret', 'name', 'created_at', 'updated_at') VALUES ('1', '2', 'Main website', '2016–03–13 23:00:00', '0000–00–00 00:00:00');

隨后的就是去愉快的測試了,這里要測試的API有

新增一個用戶

http://localhost/register

讀取所有用戶信息

http://localhost/api/users

只返回用戶id為4的信息

http://localhost/api/users/4

獲取access_token

http://localhost/oauth/access_token

利用token值獲得時間,token值正確才能返回正確值

http://localhost/api/time

打開PostMan

基于laravel制作API接口

基于laravel制作API接口

基于laravel制作API接口

基于laravel制作API接口


贊(0)
分享到: 更多 (0)
?
網站地圖   滬ICP備18035694號-2    滬公網安備31011702889846號
gmnon.cn-疯狂蹂躏欧美一区二区精品,欧美精品久久久久a,高清在线视频日韩欧美,日韩免费av一区二区
7777在线视频| 少妇高清精品毛片在线视频| 成人中文字幕在线播放| 日本一二三四区视频| 亚洲精品怡红院| 国产伦精品一区二区三区四区视频_| 中文字幕免费高清在线| 成年人在线看片| 女人和拘做爰正片视频| 国产欧美日韩小视频| 男人的天堂视频在线| 青娱乐精品在线| 日本黄色播放器| 热这里只有精品| 久久久成人精品一区二区三区| 成人综合久久网| 亚洲视频在线不卡| 国风产精品一区二区| 国产一区 在线播放| 日本人体一区二区| 久久婷婷国产精品| 91制片厂毛片| 欧美日韩视频免费在线观看| 可以免费看的黄色网址| 91网址在线观看精品| 91免费国产精品| av观看免费在线| 国产精品视频中文字幕| a级黄色片网站| 阿v天堂2018| 亚洲激情在线观看视频| 国产精品自拍视频在线| 男女爱爱视频网站| 爱福利视频一区二区| 日本中文字幕精品—区二区| 懂色av一区二区三区四区五区| 欧美视频在线观看视频| 天天碰免费视频| 蜜桃网站在线观看| 乱子伦视频在线看| 成人在线免费观看网址| 丁香婷婷激情网| 少妇久久久久久被弄到高潮| 日韩视频第二页| 国产成人精品免费看在线播放| 久久久一本二本三本| 伊人网在线综合| 六月丁香激情网| 中国老女人av| 欧美婷婷精品激情| 欧美国产日韩激情| 波多野结衣三级在线| www.xxx亚洲| 怡红院av亚洲一区二区三区h| 最新天堂中文在线| 国产免费观看高清视频| 在线观看污视频| 91香蕉国产线在线观看| 亚洲精品视频导航| 99久久国产宗和精品1上映| 成人毛片100部免费看| 在线视频一二区| 亚洲欧美国产日韩综合| 美女日批免费视频| 国产1区2区3区中文字幕| 人人爽人人爽av| 欧美成人福利在线观看| 50路60路老熟妇啪啪| 日韩中文字幕三区| 99视频在线免费播放| 无码 制服 丝袜 国产 另类| 黄色高清视频网站| 中文字幕在线乱| 亚洲天堂网2018| 在线观看亚洲色图| 天天干天天爽天天射| 日本久久久久久久久久久久| 男人搞女人网站| 色片在线免费观看| www.污污视频| 亚洲国产精品女人| 免费网站永久免费观看| 丰满的少妇愉情hd高清果冻传媒| 乱熟女高潮一区二区在线| 精品人妻人人做人人爽| 日日摸日日碰夜夜爽无码| 日韩五码在线观看| 亚洲爆乳无码专区| 亚洲第一狼人区| 福利网在线观看| 久久国产精品网| mm1313亚洲国产精品无码试看| 国产又黄又猛又粗又爽的视频| 伊人国产精品视频| 欧美日韩视频免费| 国产成人久久婷婷精品流白浆| 欧美在线观看视频网站| 日本免费在线视频观看| 国产 欧美 日本| 熟妇人妻va精品中文字幕 | 国产a级片免费观看| www.日日操| 大桥未久一区二区| 欧美乱做爰xxxⅹ久久久| 大陆极品少妇内射aaaaa| 一区二区在线播放视频| 色哟哟免费网站| 亚洲综合在线网站| 日本xxx免费| 久久久久国产一区| 在线无限看免费粉色视频| 国产午夜福利100集发布| 污网站在线免费| 精品国产免费av| 8x8ⅹ国产精品一区二区二区| www.超碰com| 缅甸午夜性猛交xxxx| 黄色a级三级三级三级| 黄色a级片免费| 999久久欧美人妻一区二区| 一区二区三区国产免费| 国产午夜大地久久| 中文字幕第50页| 欧美特黄aaa| 久久综合伊人77777麻豆最新章节| 日韩黄色片在线| 黄色高清视频网站| 99re精彩视频| 亚洲少妇久久久| 国产aaa一级片| 日韩小视频在线播放| 日韩精品手机在线观看| 国产xxxxhd| 色呦呦网站入口| 在线免费黄色小视频| 亚洲涩涩在线观看| 天天操天天干天天做| 色七七在线观看| 国产精品亚洲a| 日韩av播放器| 网站一区二区三区| 色天使在线观看| 天天操精品视频| 一本—道久久a久久精品蜜桃| 999久久久精品视频| 三级黄色片免费看| 精品91一区二区三区| 在线视频一二三区| 六月婷婷激情综合| 99热在线这里只有精品| 干日本少妇首页| www.涩涩涩| 亚洲制服中文字幕| 永久免费在线看片视频| 东北少妇不带套对白| 久久无码高潮喷水| 高清av免费看| 国产卡一卡二在线| 日本日本19xxxⅹhd乱影响| 欧美 日韩 国产 激情| 热久久久久久久久| www.国产在线视频| 99视频免费播放| 亚洲天堂一区二区在线观看| 亚洲高潮无码久久| 日本www.色| 国产一二三四区在线观看| 久色视频在线播放| 亚洲综合日韩欧美| 久久亚洲国产成人精品无码区| 啊啊啊一区二区| 久热精品在线观看视频| 97av中文字幕| 激情 小说 亚洲 图片: 伦| 日韩人妻精品一区二区三区| 国产一区二区在线视频播放| 一区二区三区网址| 免费看又黄又无码的网站| www欧美激情| 国产在线精品91| 波多野结衣激情| 国产精品少妇在线视频| 成人午夜免费剧场| 国产三级国产精品国产专区50| 欧洲xxxxx| 亚洲av无日韩毛片久久| 国产成人a亚洲精v品无码| 91xxx视频| 9l视频白拍9色9l视频| 国模吧无码一区二区三区| 裸体大乳女做爰69| 性欧美在线视频| 精品999在线| www.日日操| 日本黄色三级大片| 免费看欧美一级片| 久草视频国产在线| a天堂资源在线观看| 国内外成人激情免费视频| 中日韩av在线播放|