首頁 >後端開發 >php教程 >用laravel dingo/api創建簡單的api

用laravel dingo/api創建簡單的api

不言
不言原創
2018-07-09 09:53:462339瀏覽

這篇文章主要介紹了關於用laravel dingo/api創建簡單的api,有著一定的參考價值,現在分享給大家,有需要的朋友可以參考一下

#1,修改.env配置檔案新增

API_STANDARDS_TREE=vnd 
API_SUBTYPE=myapp
API_PREFIX=api
API_DOMAIN=null
API_VERSION=v1
API_NAME="My API"
API_CONDITIONAL_REQUEST=false
API_STRICT=false
API_DEBUG=true

 Standards Tree 標準樹 

這有三個不同的樹: x,prs 和vnd。你使用的標準樹需要取決於你開發的項目

未註冊的樹(x)主要表示本地和私有環境

私有樹(prs)主要表示沒有商業發布的項目

供應商樹(vnd)主要表示公開發布的項目

 子類型SUBTYPE 

子類型通常是應用程式或項目的短名稱,都是小寫的。

 前綴PREFIX (例如www.z5w.net/api/)

如果你曾經使用過API 你就會知道大多數服務都來自子網域或前綴。前綴或子域是必須的,但只需要一個。請避免使用版本號碼作為你的前綴或子網域,因為版本控制是透過 header 頭 Accept 處理的。

子網域API_DOMAIN

例如可以用api.z5w.net來做api的呼叫位址。如果已經設定了前綴prefix,則domain一般設為null

版本號version

這個版本號是你的API 的預設版本號,並且會在一些未提供版本號的情況下作為回呼的預設值使用。在產生 API 文件時也會使用這個版本號作為預設值。

名稱Name

你的 API 的名稱只會在你使用 API Blueprint 指令產生文件的時候使用。使用此名稱可以避免你每次產生文件的時候都必須手動定義名稱。
你可能需要把它用引號包起來。

條件請求CONDITIONAL_REQUEST

『條件請求』預設為開啟狀態,這有利於客戶端的快取機制在可能的情況下快取 API 請求。

嚴格模式STRICT

嚴格模式要求用戶端傳送 Accept 頭,取代設定檔中設定的預設版本。這意味著你將不能透過瀏覽器直接存取你的 API。

如果開啟嚴格模式,發送非法的 Acceept 標頭會拋出一個未處理的異常 Symfony\Component\HttpKernel\Exception\BadRequestHttpException ,你需要自己處理這個異常。

偵錯模式Debug

該套件處理的通用錯誤包含一個 debug 鍵,當啟用這個鍵時,將會填入堆疊追蹤詳細資料。

2,在/routes/web.php新增路由

$api = app('Dingo\Api\Routing\Router');
$api->version('v1', function ($api) {
    $api->get('helloworld', 'App\Api\Controllers\HelloController@index');
});

  3,建立檔案/app/Api/Controllers/HelloController.php

<?php

namespace App\Api\Controllers;

use Illuminate\Http\Request;
use App\Http\Controllers\Controller;

class HelloController extends Controller
{
    public function index()
    {
        return &#39;{content:Helloworld!}&#39;;
    }
}

  4,測試路由: $ php artisan api:routes,如果出現

+-----+----------+-----------------+------+-------------------------------------------+-----------+------------+----------+------------+
| Host | Method   | URI             | Name | Action                                    | Protected | Version(s) | Scope(s) | Rate Limit |
+------+----------+-----------------+------+-------------------------------------------+-----------+------------+----------+------------+
|      | GET|HEAD | /api/helloworld |      | App\Api\Controllers\HelloController@index | No        | v1         |          |            |
+------+----------+-----------------+------+-------------------------------------------+-----------+------------+----------+------------+

  表示成功

  然後訪問http://www.*.com/api/helloworld,看看是不是出現了api的json資料呢?

{content:Helloworld!}

以上就是本文的全部內容,希望對大家的學習有所幫助,更多相關內容請關注PHP中文網! 

 相關推薦:

##laravel dingo/api新增jwt-auth認證

以上是用laravel dingo/api創建簡單的api的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn