<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                # restful api [TOC] >[success] restful是一種軟件設計風格,主要用于客戶端與服務器端的交互,一般來說restful基于http/https協議,通過某一個唯一標識符(URI)請求對應的服務器資源 ![](https://i.loli.net/2019/03/22/5c9474e7ad430.png) ## restful作用 >[info] 為前端(APP端/PC瀏覽器端/微信端等等)提供一套簡單并且統一的請求方式來從后端(服務器)獲取需要的數據 > 提供接口的方式:基于http/https協議 > 返回接口數據的形式主要為:JSON和XML ## 資源路徑 在restful api中每個資源路徑都對應一個唯一的資源,所以規定網站不能有動詞,只能有名詞,并且一般來說為重數 ``` http://api.local.com/api/v1/movies----表示電影資源 get獲取多條記錄 post 添加 http://api.local.com/api/v1/images/1 ----表示圖片資源 獲單條 修改 刪除 get put delete ``` ## Http動詞 ``` POST /articles -- 創建文章內容 GET /articles -- 獲取全部 GET /articles/1 -- 獲取主鍵id為1的文章 PUT /articles/1 -- 修改參數為1的文章 DELETE /articles/1 -- 刪除參數為1的文章 ... 協議還有很多,常用的就增刪改查 HEAD:獲取資源的元數據。 OPTIONS:獲取信息,關于資源的哪些屬性是客戶端可以改變的。 這二個個不常用,但是也要記住下,也是比較有用的 ``` ## 過濾信息 如果記錄數量很多,服務器不可能都將它們返回給用戶。API應該提供參數,過濾返回結果。 下面是一些常見的參數。 ``` limit=10:指定返回記錄的數量 offset=10:指定返回記錄的開始位置。 page=2&per_page=100:指定第幾頁,以及每頁的記錄數。 sortby=name&order=asc:指定返回結果按照哪個屬性排序,以及排序順序。 animal_type_id=1:指定篩選條件 ``` 參數的設計允許存在冗余,即允許API路徑和URL參數偶爾有重復。比如,GET /zoo/ID/animals 與 GET /animals?zoo\_id=ID 的含義是相同的。 ## 狀態碼 | 狀態碼 | 含義 | 說明 | | --- | --- | --- | | 200 | OK | 操作成功, 并返回數據 get | | 201 | CREATED | 新建成功 post | | 202 | Accepted | 修改成功 put | | 204 | NO CONTENT | 刪除成功 delete | | 400 | BAD REQUEST | 請求語法錯誤 | | 403 | Forbidden | 請求沒有權限的資源 | | 5xx | | 服務器端錯誤 |
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看