laravel和dingoapi的結合使用

* dingoapi是一個laravel的開源插件,能夠在github上搜索到,如今在作一個項目,項目中老是會有後端跟前端的json數據交互,而這個dingoapi爲json交互提供了很大的便利。php

*前端

先安裝dingoapi

一、在composer.json中的require中添加"dingo/api":"1.0.*@dev",而後在項目根目錄運行composer update

注意:dingoapi若是直接用composer require dingo/api:1.0.x@dev的方式安裝是安裝不成功的,
由於這個包做者本人仍是將其設置爲開發中,非穩定版,可是實際上這個包通過驗證是穩定的,已經有4500+的star了。laravel

二、在config/app.php中註冊服務提供者到providers

Dingo\Api\Provider\LaravelServiceProvider::class,

三、生成dingoapi的配置文件

php artisan vendor:publish --provider="Dingo\Api\Provider\LaravelServiceProvider"

會在config文件夾裏生成api.php這個配置文件git

四、將api.php中的prefix默認值設置爲api,也能夠不是api,可是必需要有個後綴,後綴不要設置爲"/",若是設置爲"/",laravel的視圖跟api會弄混淆,好比,在laravel中自定義了一個404錯誤頁面,若是這裏設置爲"/"的話,訪問不存在的頁面的時候,會返回格式爲json的錯誤信息,由於dingapi就是作接口用的,無論什麼都會被轉爲json。

那若是想把視圖跟api區分開來,路由文件須要這麼寫,如下是例子:

①首先顯示修改RouteServiceProvider.php,把裏面默認的路由的api.php改成你想要的後臺admin.phpgithub

clipboard.png

②接着是定義路由開始格式:json

clipboard.png

必定要記住!例如你用了localhost/你的項目名/public/,你寫的Api路由後面必須加上api,也就是localhost/你的項目名/public/api,不然你就會報找不到這個路由的404!!後端

相關文章
相關標籤/搜索