使用 SmartDoc 記錄 API

查看 Apigee Edge 說明文件。
前往 Apigee X說明文件
資訊

,瞭解如何調查及移除這項存取權。

SmartDoc 能讓您在 Drupal 7 開發人員入口網站上記錄 API 的方式, 完全互動式的 API 說明文件。透過互動式說明文件,入口網站使用者可以執行下列操作:

  • 閱讀 API 相關資訊
  • 將即時要求傳送至 API
  • 查看 API 傳回的即時回應

只要在 API 上建立互動式說明文件,就能簡化入口網站使用者 學習、測試及評估 API

Edge Management API 是符合 REST 樣式的 API,可讓您透過任意 API 來存取 API 服務 HTTP 用戶端Apigee 會使用 SmartDoc 建立 Edge 管理作業的互動式說明文件 也能使用 Google Cloud CLI 或 Compute Engine API詳情請參閱這裡的 API 說明文件。

SmartDoc 入口網站範例

如要使用 SmartDoc,您必須擁有 Apigee Developer Services 入口網站。若需更多資訊,請參閲 建立開發人員 入口網站

在開發人員入口網站首頁中按一下頂端導覽列的「API」,即可執行以下動作: 查看「API 說明文件」頁面。

入口網站中記錄了兩個 API:Hello World 和寵物商店範例。

Hello World API 是透過模擬目標 OpenAPI 建立 規格,mocktarget.yaml。詳情請參閱 https://github.com/apigee/api-platform-samples/tree/master/default-proxies/helloworld/openapi

Pet Store Example API 是依據經典的寵物店示範建立而成。

探索 Hello World API:

  1. 按一下「Hello World API」。系統隨即會顯示 Hello World API 摘要頁面:
  2. 按一下「查看 API 肯定字詞」。這項資源的 SmartDoc 是 顯示:
  3. 按一下「傳送這項要求」
  4. 查看傳回的回應:
    HTTP/1.1 200 OK
    Connection:
    keep-alive
    Content-Length:
    18
    Content-Type:
    text/html; charset=utf-8
    Date:
    Tue, 21 Jun 2016 21:49:32 GMT
    ETag:
    W/"12-Jb9QP1bUxNSmZkxQGt5KLQ"
    X-Powered-By:
    Apigee
    <H2>I <3 APIs</H2>
    
  5. 點按「要求」分頁標籤來查看要求,或點按 cURL 查看對應的 cURL 呼叫。

如何使用 SmartDoc 記錄 API

SmartDoc 會使用「模型」來代表您的 API,模型內會列出所有 您的 API 相關資訊入口網站會從模型中擷取 API 相關資訊 將入口網站的說明文件頁面轉譯為 Drupal 節點,其中每個 Drupal 節點會對應至 導向入口網站的說明文件頁面

使用 SmartDoc 的一般步驟如下:

  1. 在入口網站上設定 Drupal SmartDoc 模組。
  2. 建立 SmartDoc 模型。
  3. 從 WADL 檔案 OpenAPI (舊稱 Swagger) 將 API 新增至模型 或手動更新
  4. 將模型算繪為 Drupal 節點集合。每個 Drupal 節點 包含單一 API 的相關資訊舉例來說,如果 API 中的資源同時支援 POST 和 PUT 要求,SmartDoc 會為 POST 和 PUT 建立獨立的 Drupal 節點。
  5. 發布 Drupal 節點。入口網站使用者可在發布後 與您的 API 互動
  6. 在發布 Drupal 節點之前或之後「編輯」。你可以 使用 Drupal 編輯器或透過編輯原始 WADL 檔案來編輯 Drupal 節點 OpenAPI 規格。WADL 檔案或 OpenAPI 規格編輯完成後,請匯入 將變更傳回模型做為新的修訂版本,然後轉譯並發布變更
  7. 啟用 TLS。因為 SmartDoc 可將驗證憑證傳送給您的 向 API 發出要求時,您必須在入口網站上啟用 TLS,以便 確保這些憑證安全無虞在入口網站的實際工作環境與測試環境中 Apigee 提供提出 https:// 要求所需的 TLS 憑證。但是在您離開之前 您必須使用自己的入口網站,才能取得 TLS 憑證並啟用 TLS 權限。詳情請參閱 在以下環境中使用 TLS 入口網站

關於 SmartDoc 模型和範本

當您在入口網站中建立模型時,模型實際上會儲存在 Edge 中 而非 Drupal模型是 JSON 的大型區塊,具有內部名稱 (例如 「my-smartdocs-api」),」則會定義 API 的結構。另一方面,入口網站 則會在 HTML 中呈現模型,並提供模型的編輯介面。任何 API 更新 傳送回符記會自動推送回來源模型

已儲存在機構中

已儲存在 Drupal 中

模型

範本

具備編輯功能的 Drupal 節點

假設您的機構中有多個入口網站 (例如開發、階段和 正式環境)。在 Pantheon 中,您將入口網站從一個環境移至另一個環境。每個執行個體 入口網站似乎有專屬模型,但所有模型都確實參照了資料來源 模型如果您在開發中編輯 API,模型就會更新,而變更也會出現在實際工作環境中。 同樣地,如果您在開發中刪除模型,來源也會遭到刪除,無法再用於 。

範本可控制 SmartDoc 的外觀和風格,以及這些範本 ( 處理常式和 CSS 檔案) 會和各個入口網站執行個體一併儲存。理論上來說 並為每個模型使用專屬範本不過,使用轉譯架構還有一個便利性 是系統會自動套用預設範本 (Apigee 預設範本或您提供的範本) 已套用至每個模式

下圖顯示模型和入口網站之間的關係。綠色箭頭表示 自動同步處理

以下 cURL 指令會列出貴機構的所有模型:

curl -v https://api.enterprise.apigee.com/v1/o/{your_org}/apimodels/ -u edge_org_admin@example.com

設定 SmartDoc 模組

Apigee 將 SmartDoc 實作為自訂 Drupal 模組。請按照下列程序 要設定 SmartDoc 模組。

如何設定 SmartDoc 模組:

  1. 以具備管理員或內容建立權限的使用者身分登入入口網站。
  2. 在 Drupal 管理選單中選取「Modules」。列出所有 系統會隨即顯示已安裝的 Drupal 模組。
  3. 啟用 SmartDocs 模組。
  4. 儲存設定。
  5. 在 Drupal 管理員選單中選取「Modules」
  6. 選取 [Smart Docs] ->權限並確保「執行管理權限」 Tasks 模組的工作」「管理員」角色已啟用。
  7. 依序選取「設定」>「設定」開發人員入口網站 (Drupal 管理頁面) 或前往 Google 試算表選單
  8. 將「Connection Timeout」和「Request Timeout」設為 16 秒內請求驗證碼。
  9. 儲存設定。
  10. 進行網址設定:
    1. 依序選取「設定」>「設定」搜尋和中繼資料 >網址別名 > Drupal 選單中的「設定」
    2. 設定別名長度上限元件數量上限 長度255
    3. 展開「標點符號」
    4. 用於左大括號 ({)右大括號 (}) 設定,請選取「無動作 (不取代)」
    5. 按一下「儲存設定」
  11. 如果您的開發人員入口網站將向內部網路的使用者公開 或者如果部分 API 位於私人網路,請設定 SmartDoc API Proxy 網址,如下所示:
    1. 依序選取「設定」>「設定」Drupal 管理者中的 SmartDoc 或前往 Google 試算表選單
    2. 展開 [進階設定]
    3. 請按照下列步驟更新「SmartDoc Proxy 網址」欄位: <host>/smartdocs/v1/sendrequest
      內嵌說明應該會提供環境的必要值。例如:
      https://api-us-east-1-enterprise.apigee.com/smartdocs/v1/sendrequest

      這個欄位的預設值是 https://apiconsole-prod.apigee.net/smartdocs/v1/sendrequest
    4. 按一下「儲存設定」

建立模式

模型包含 API 表示法的所有相關資訊。您可以定義 入口網站上的多個模型支援不同的 API,或將所有 API 整合成單一 模型

每個模型會指定不重複的內部名稱,而這也定義了 產生的節點數量每個 Drupal 節點的網址的格式為:

http://<drupalBasePath>/<internalName>/apis/<httpMethod>/<resourcePath>

其中:

  • drupalBasePath:入口網站的基準網址。
  • internalName:模型的內部名稱。
  • httpMethod:API 的 HTTP 方法,例如:get、put、post 或 刪除。
  • resourcePath:資源路徑。

舉例來說,如果您將內部名稱指定為「mymodel」,則產生的網址 對名為「/books」資源的 GET 要求的 Drupal 節點為:

http://prod-myco.devportal.apigee.com/mymodel/apis/get/books

如何建立模型

建立模型時,模型會儲存在 Edge 機構中,做為 API 來源 成本中心的架構詳情請參閱關於 SmartDoc 模型和 範本

  1. 以具備管理員或內容建立權限的使用者身分登入入口網站。
  2. 選取「內容」>Drupal 行政區的 SmartDoc 或前往 Google 試算表選單
  3. 選取頁面頂端的「新增模型」
  4. 輸入下列欄位:
    • 名稱:會顯示在整個網站中的模型名稱。
    • 「Internal name」(內部名稱):輸入「Name」(名稱) 時,系統會傳回內部使用的名稱 名稱隨即顯示模型的內部名稱,在所有模型中均不得重複。 內部名稱只能使用小寫英文字母、數字和連字號,但不含空格。 選取「編輯」即可編輯這個名稱。
    • 說明:模型的說明。
  5. 選取「建立模型」

建立模型之後,系統會將您重新導向至模型的頁面。接著,您可以 「Operation」下拉式選單 bx 顯示:

  • 匯入用於說明 API 的 WADL 檔案,或指定 OpenAPI 的網址 說明 API 的規格。
  • 新增修訂版本至模型
  • 修改模式的「設定」,包括 模型
  • 將模型匯出至檔案。
  • 刪除模型。

將 API 新增至模型

您可以透過以下方式將 API 新增至模型:

  • 匯入包含 API 定義的 WADL 檔案
  • 匯入 OpenAPI 規格 (OpenAPI 2.0 或 1.2)
  • 手動建立資源和方法

您也可以將 SmartDoc JSON 檔案匯入模型。這個檔案通常是由以下使用者建立: ,請先匯出現有模型、編輯檔案,然後匯入更新如果需要 請參閱「匯出及匯入模型」。

影片:請觀看這部短片,瞭解如何使用開發人員將 API 加入 SmartDoc 模型 匯入 OpenAPI 規格

匯入 WADL

成功建立模型後,請匯入說明 API 的 WADL 檔案。每次 系統就會自動建立新的模型修訂版本

  1. 以具備管理員或內容建立權限的使用者身分登入入口網站。
  2. 選取「內容」Drupal 中的 SmartDoc 管理選單
  3. 選取要更新的型號。
  4. 選取「作業」下方的「匯入」
  5. WADL[Choose Format] (選擇格式) 下拉式選單中選取「WADL」WADL SmartDoc 匯入頁面。
  6. 在「上傳」中選取檔案網址 輸入下拉式選單。
    1. 如果您選取「File」,請瀏覽至 WADL 檔案。
    2. 如果您選取「URL」,請指定 WADL 檔案的網址。
  7. 按一下「Import」,將模型匯入模型。您現在可以 算繪模型
  8. 系統會將您重新導向至模型的資訊頁面,現在您可以在該頁面呈現 模型

匯入 OpenAPI 規格

成功建立模型後,您可以匯入 OpenAPI (舊稱 Swagger) 規格。Edge 支援 OpenAPI 1.2 和 2.0 版。

OpenAPI 會使用包含 JSON 物件的檔案描述 API。每次匯入資料 OpenAPI 規格,系統會自動建立新的模型修訂版本

如何匯入 OpenAPI 規格:

  1. 以具備管理員或內容建立權限的使用者身分登入入口網站。
  2. 選取 內容 >SmartDoc Drupal 管理選單。
  3. 選取要更新的型號。
  4. 選取「作業」下方的「匯入」
  5. 在頁面選取「Swagger JSON」或「Swagger YAML」 「Smart Docs」匯入頁面的「Choose Format」下拉式選單。
  6. 選取「檔案」或「網址」上傳類型下拉式選單 (您必須為 OpenAPI 1.2 選取「URL」)。
    1. 如果您選取「File」(檔案),請瀏覽至 OpenAPI 規格。
    2. 如果您選取「URL」,請指定 OpenAPI 的網址 規格。
  7. 按一下「Import」,將模型匯入模型。
  8. 系統會將您重新導向至模型的資訊頁面,現在您可以在該頁面呈現 模型

手動建立資源 和方法

如果您沒有代表 API 的 WADL 檔案或 OpenAPI 規格,可以 手動將 API 新增至模型此外,如果您使用 WADL 檔案或 OpenAPI 規格來建立 您可以透過這項程序編輯 API,包括新增 API。 匯入。

如何手動新增 API:

  1. 建立新的模型修訂版本。

    建立修訂版本時,請指定模型中所有 API 的單一基本路徑。 也就是模型中的所有 API 都共用相同的基本路徑例如,指定基礎路徑 身分:

    https://myCompany.com/v1

    將資源新增至模型時,資源會擴充基本路徑。
  2. 定義一或多項模型資源。這個資源路徑會與基本路徑 ,指定資源的完整網址。舉例來說 定義「/login」的路徑,資源的完整網址為:

    https://myCompany.com/v1/login
  3. 為每項資源定義一或多個方法。方法會指定 HTTP 動詞 物件呼叫舉例來說,假設「/login」資源,您支援使用 POST 登入 請刪除以登出。這項資源不支援其他 HTTP 動詞,例如 PUT 或 GET。 因此,請為資源定義兩個方法,一種用於 POST,一種用於 DELETE。

    此方法會使用父項資源的資源網址。因此,凡是 網址是由 SmartDoc 的單一資源定義。

一般原則如下:

  • 為 API 中的每個不重複基本路徑建立不同的 SmartDoc 模型。
  • 為 API 中的每個不重複資源定義不同的 SmartDoc 資源。
  • 為資源支援的每個 HTTP 動詞定義不同的 SmartDoc 方法。

建立新的模型修訂版本

您只能將資源新增至模型的現有修訂版本,如果模型已有 新增資源如果是全新模型且沒有修訂版本,請建立新的模型 修訂版本。

如要建立新的模型修訂版本:

  1. 以具備管理員或內容建立權限的使用者身分登入入口網站。
  2. 選取 內容 >內含 SmartDoc 點選「Drupal」管理選單
  3. 找到要更新的模型,然後選取「新增修訂版本」。 在「Operations」(作業) 下。
  4. 在「新增 API 修訂版本」頁面輸入下列資訊:
    • Display Name:顯示在 入口網站。
    • 版本 ID:修訂版本的簡短 ID。
    • 說明:修訂版本的說明。
    • Base URL:模型修訂版本中所有 API 的基準網址。A 罩杯 模型可能會為每個修訂版本使用不同的基本網址例如提供版本 指標。第一個模型修訂版本的基礎網址為:
      https://myCompany.com/v1
      下一個修訂版本的基礎網址可能為:
      https://myCompany.com/v2
  5. 選取「新增修訂版本」。系統會將您重新導向至模型的修訂版本頁面。 您現在可以定義模型上的資源。

定義資源

資源會指定 API 的完整網址。定義資源時 資源路徑,結合模型修訂版本中的基準網址來建立完整網址 共用資源的配額

如何定義資源:

  1. 以具備管理員或內容建立權限的使用者身分登入入口網站。
  2. 選取 內容 >SmartDoc 點選「Drupal」管理選單
  3. 針對您要更新的模型,在「作業」下方選取「API」 修訂版本,查看模型的所有修訂版本。
  4. 選取要編輯的修訂版本。
  5. 在修訂版本頁面的下拉式選單中,選取「Add Resource」
  6. 在「Add Resource」頁面中輸入下列資訊:
    • Display Name:資源的名稱。
    • 路徑:開頭為「/」的資源路徑。如果 「Path」會與模型修訂版本的「Base URL」合併 建立資源的完整網址
    • 說明:資源的說明。
    • 參數:視需要輸入定義每個參數的 JSON 物件 對資源的存取權這些參數的說明如下。
  7. 選取「新增資源」。系統會將您重新導向至模型頁面,您現在可以 定義資源的方法

您可以選擇為資源新增範本、查詢和標頭等參數 參數。在該資源中定義的任何方法都會繼承所有資源參數。 因此,如果您在資源上定義查詢參數,則加進該資源的所有方法都會 都必須支援該查詢參數

或者,您也可以在方法中定義參數。舉例來說,POST 方法 DELETE 方法不支援的查詢參數。因此,請新增任何參數 您定義方法時指定的專用於特定方法,如下所述。

下圖顯示 Apigee 核准或撤銷開發人員應用程式API,並醒目顯示各類型的參數:

每個參數類型都是由 JSON 物件定義:

類型

JSON 物件

附註

範本

{
"dataType": "字串",
"defaultValue": "",
"description": "機構名稱。",
"name": "org_name",
"required": true,
"type": "範本"
}

範本參數一律為必要欄位,因此請將 required 設為 true,並將值設為 defaultValue

description 值 當使用者在 SmartDoc 中將滑鼠遊標懸停在網址上時,畫面上會出現彈出式視窗。

查詢

{
"dataType": "字串",
"defaultValue": "",
"description": "地點。",
"name": "w",
"required": true,
"type": "QUERY"
}

必要查詢參數仍然可以指定 defaultValue,但通常不會指定。

如果是選用查詢參數,請將 required 設為 false,並將值指定為 defaultValue

標頭

{
"dataType": "字串",
"defaultValue": "application/json",
"description": "指定為 <code>application/json</code>。",
"name": "內容類型",
"required": true,
"type": "標題"
}

注意您可以在說明中使用 HTML 標記的方式。

範本參數會在資源路徑中定義變數。舉例來說,假設您定義了兩個 範本參數請注意參數陣列中每個參數的定義 以半形逗號分隔:

[
 {
  "dataType": "string",
  "defaultValue": "",
  "description": "Mention the organization name.",
  "name": "org_name",
  "required": true,
  "type": "TEMPLATE"
 },
 {
  "dataType": "string",
  "defaultValue": "",
  "description": "Mention the user email.",
  "name": "developer_email",
  "required": true,
  "type": "TEMPLATE"
 }
]

接著,您就可以在資源路徑定義中使用範本參數,這些參數會包含在「{}」中。 舉例來說,請將路徑設為:

/login/{org_name}/{developer_email}

使用者必須在 SmartDoc API 頁面中編輯網址,藉此指定網址的 org_namedeveloper_email 部分, 他們可以提出要求

定義方法

為每項資源定義一或多個方法。方法定義會指定 HTTP 動詞 可在資源上叫用每項資源可以定義單一方法,或 來解決問題

在定義方法時,請指定方法使用的所有參數,包括查詢和 標頭參數。如需新增參數的相關資訊,請參閱上方的資源說明 新增至方法。

下圖顯示 Apigee Create Developer API 現有的 SmartDoc 頁面,其中包含 每個區域都會以您在定義 方法:

下一張圖片顯示相同頁面,但已選取「要求主體」的說明:

如何定義方法:

  1. 以具備管理員或內容建立權限的使用者身分登入入口網站。
  2. 選取 內容 >內含 SmartDoc 點選「Drupal」管理選單
  3. 針對您要更新的模型,在「作業」下方選取「API」 修訂版本,查看模型的所有修訂版本。
  4. 選取要編輯的修訂版本。
  5. 開啟修訂版本頁面的「Add Method」(新增方法) 部分 專案。
  6. 在「Edit Method」頁面中輸入下列資訊:
    • Display Name:API 的名稱,也是 API 的 Drupal 頁面。
    • 說明:說明 API。
    • Method Verb:HTTP 動詞類型。
    • 安全配置:指定驗證模式 (如果有的話), 方法。詳情請參閱設定 SmartDoc 驗證 類型
    • 內容類型:要求和回應的內容類型。詳情請參閱 一節,瞭解如何設定不同的驗證方法。
    • 參數:(選用) 方法的任何查詢或標頭參數。 詳情請參閱上述的說明,瞭解如何在資源中新增參數。
    • 要求主體說明文件:(選填) 說明要求主體。發布 PUT 方法則會接收要求主體您可以用這個部分描述。如果您省略這個 值,系統會省略「Request Body」下的「Description」連結 產生的結果。
    • 要求主體範例:(選用) 顯示要求主體範例。 格式通常為 JSON 物件或 XML針對 POST 和 PUT 動詞,Request Body 範例會當做每個要求的一部分傳遞。SmartDoc 頁面的使用者編輯這個項目 然後再向 API 提交要求如果您省略這個值, 產生的 SmartDoc 頁面。
    • 代碼:與 API 相關聯的代碼陣列。SmartDoc 會使用標記來 將類似的 API 分到同一組舉例來說,您可以將「統計資料」標記所有 API 關於統計資料您可以將來自不同資源的 API 歸入同一個標記,如果他們 都使用相同的代碼
  7. 選取「Add Method」(新增方法)。系統會將您重新導向至模型頁面,您現在可以 可以轉譯並發布方法

轉譯模型

將 API 新增至模型後,您就可以算繪模型。轉譯程序會將模型的 向 Drupal 節點發布 API 的說明轉譯完成後,您會看到一個 Drupal 節點,其中每個 Drupal 節點都會對應至一個 HTML 網頁。

您可以選擇一次算繪整個模型,或是針對 算繪。

如要算繪模型:

  1. 以具備管理員或內容建立權限的使用者身分登入入口網站。
  2. 選取 內容 >SmartDoc 點選「Drupal」管理選單
  3. 針對您要算繪的模型,選取下方的「API 修訂版本」。 作業
  4. 選取要轉譯的修訂版本。您只能轉譯來自以下單一修訂版本的節點: 模型
  5. 選取算繪方法。
  6. 從「Update」中選取「Render Nodes」 選項下拉式選單。
  7. 按一下「更新」
  8. 載入畫面會顯示節點轉譯的進度。
    節點轉譯完畢後,各個 API 的 Drupal 節點 ID 會顯示在 模型的「節點關聯」欄。按一下 Node 中的連結 關聯資料欄來查看轉譯的節點。

不選取轉譯節點,不如選擇轉譯節點 並發布節點,藉此將 API 算繪並立即發布為 Drupal 節點。

發布節點

發布節點後,入口網站使用者才會看見節點。您也可以選擇 也就是在轉譯過程中發布節點如果您選擇不發布節點 不必手動發布。

如何發布節點:

  1. 以具備管理員或內容建立權限的使用者身分登入入口網站。
  2. 選取 內容 >SmartDocSmartDoc 點選「Drupal」管理選單
  3. 針對您要發布的模型,選取下方的「API 修訂版本」。 作業
  4. 選取要發布的修訂版本。您只能發布單一修訂版本的節點 模型
  5. 選取發布方法。
  6. 在修訂版本中選取要發布的節點。
  7. 從「Update」中選取「Publish Nodes」選項下拉式選單。
  8. 按一下「更新」
  9. 在「節點關聯」下方選取節點 ID,前往節點。 。

根據預設,已發布 API 節點的 Drupal 網址格式為:http://<drupalBasePath>/<internalName>/apis/<httpMethod>/<resourcePath> 請按照以下程序控管網址格式:

  1. 以具備管理員或內容建立權限的使用者身分登入入口網站。
  2. 依序選取「設定」>「設定」搜尋和中繼資料 >網址別名 > [Drupal 管理] 選單中的模式
  3. 在「所有 SmartDoc 方法的模式」下方,指定您想要的方式 來產生路徑
  4. 選取「儲存設定」

由於入口網站設有快取功能,因此模型頁面可能不會立即顯示 發布後的畫面如有需要,您可以使用 下列程序:

  1. 以具備管理員或內容建立權限的使用者身分登入入口網站。
  2. 依序選取「設定」>「設定」Drupal 行政區的 SmartDoc 或前往 Google 試算表選單
  3. 按一下「Rebuild SmartDoc 模型快取」

取消發布節點

您可以隨時取消發布已發布的節點。取消發布節點後, 入口網站使用者。

如何取消發布節點:

  1. 以具備管理員或內容建立權限的使用者身分登入入口網站。
  2. 選取 內容 >SmartDoc 點選「Drupal」管理選單
  3. 找出要取消發布的模型,然後選取下方的「API 修訂版本」 作業
  4. 選取要取消發布的節點模型修訂版本。
  5. 選取要取消發布的修訂版本中的節點。
  6. 在「Update」(更新) 部分選取「Unpublish」(取消發布) 節點。 選項下拉式選單。
  7. 按一下「更新」

查看模型的修訂版本

藉由匯入新的 WADL 檔案或 OpenAPI 規格,建立新的模型修訂版本 或手動建立新的修訂版本。建立新的修訂版本後 ,您就能轉譯並發布修訂版本,取代目前發布的 Drupal 節點

您可以同時轉譯及發布多個修訂版本中的節點。也就是說 模型的五項修訂版本,您可以從任何或所有修訂版本發布節點。不過,發布 模型中的 API 與其他模型的已發布節點相同,就會取消發布 的 API 版本,並替換成最近發布的 API 版本 也能使用 Google Cloud CLI 或 Compute Engine API

如要查看模型的修訂版本:

  1. 以具備管理員或內容建立權限的使用者身分登入入口網站。
  2. 選取 內容 >SmartDoc 點選「Drupal」管理選單
  3. 針對您要更新的模型,選取下方的「API 修訂版本」。 作業
  4. 選取要查看的模型修訂版本。
  5. 按照上述方式轉譯及發布節點。

編輯節點

轉譯節點後,您可以使用 Drupal 編輯器來編輯節點。舉例來說,您可以編輯 API 的 HTTP 動詞和說明,或為 API 新增查詢或標頭參數。個人中心 可以編輯透過 WADL 檔案或 OpenAPI 規格建立的節點,或是建立

您也可以編輯原始 WADL 檔案或 OpenAPI 規格。當您使用 編輯,將 WADL 檔案或 OpenAPI 規格匯入模型做為新的修訂版本 然後按照上述方式轉譯並發布變更。

如何使用 Drupal 編輯器編輯節點:

  1. 以具備管理員或內容建立權限的使用者身分登入入口網站。
  2. 瀏覽至與所需 API 說明文件相對應的 Drupal 節點 編輯。
  3. 選取「Edit」即可使用 Drupal 編輯器。
  4. 編輯完成後,選取「更新方法」

或者,您也可以使用 SmartDoc 模型編輯節點:

  1. 以具備管理員或內容建立權限的使用者身分登入入口網站。
  2. 選取 內容 >SmartDoc 點選「Drupal」管理選單
  3. 針對您要更新的模型,選取下方的「API 修訂版本」。 作業
  4. 選取要發布的模型修訂版本。
  5. 在「Operations」(作業) 下拉式選單中選取「Edit method」(編輯方法): 要編輯的方法

如要刪除節點:

  1. 以具備管理員或內容建立權限的使用者身分登入入口網站。
  2. 選取 內容 >SmartDoc 點選「Drupal」管理選單
  3. 針對您要更新的模型,選取下方的「API 修訂版本」。 作業
  4. 選取要發布的模型修訂版本。
  5. 選擇「Delete method」(刪除方法): 該方法的「Operations」(作業) 下拉式選單。
    注意:刪除節點也會將 API 從模型中移除。如果您只有 需要取消發布 API,讓入口網站使用者無法看到這個 API,但並不想將其刪除 請先按照上述方式取消發布節點,

入口網站內建報告,可顯示 SmartDoc 模型不再參照模型的有效方法。報表存取依據: 在 Drupal 選單中選取「報表」,然後選取報表 SmartDoc 節點狀態

匯出及匯入模型

SmartDoc 可讓您將現有模型匯出成檔案。舉例來說,您可以將 實際工作環境和測試環境然後在暫存室中編輯所有 SmartDoc 環境。準備好發布 API 時,請匯出並匯入測試環境模型 複製到實際工作環境中的模型

匯入模型時,系統會建立新的模型修訂版本。SmartDoc 會嘗試比對現有項目 模型中使用已匯入 API 的 API如果 SmartDoc 偵測到相符結果,匯入作業會更新 Drupal 現有 API 對應的節點如果 SmartDoc 沒有偵測到相符項目,就會 會為 API 建立新的 Drupal 節點。

舉例來說,您有一個 POST API,該 API 對應至 ID 為 91 的 Drupal 節點。然後 會匯入模型,SmartDoc 偵測到已匯入模型的 POST API 與現有模型 POST API。更新 POST API 後,請更新 Drupal 節點 91。如果 SmartDoc 未偵測到 兩者相符,就會以新 ID 建立新的 Drupal 節點。

Drupal 使用下列 API 特性執行比對:

  • internalName:內部模型名稱。
  • httpMethod:API 的 HTTP 方法,例如 GET、PUT、POST 或 刪除。
  • resourcePath:資源路徑。
  • query params:API 使用的任何查詢參數。

如果匯入的 API 的四個特性與模型中現有的 API 相符,則 SmartDoc 會更新現有的 Drupal 節點。

匯出的模型會以一個 JSON 物件表示,該物件包含資源項目, 方法。這表示您可以編輯匯出的模型來修改資源或方法,然後 重新匯入模型如果您編輯了 JSON 物件,請勿修改下列欄位:

  • revisionNumber
  • createdTime
  • modifiedTime
  • apiRevisionId
  • resourceId

如何匯出模型:

  1. 以具備管理員或內容建立權限的使用者身分登入入口網站。
  2. 選取 內容 >SmartGoogle 文件 in 點選「Drupal」管理選單
  3. 找出要匯出的模型,然後選取下方的「匯出」 作業
  4. 將匯出檔案類型選取為 SmartDoc JSON
  5. 按一下 [匯出]
  6. 系統會提示您將檔案儲存到磁碟,或使用編輯器開啟檔案。

如何匯入模型:

  1. 以具備管理員或內容建立權限的使用者身分登入入口網站。
  2. 選取 內容 >SmartGoogle 文件 in 點選「Drupal」管理選單
  3. 找到要匯入的模式,然後選取下方的「匯入」 作業
  4. 在「選擇格式」下拉式選單中,選取「SmartDoc JSON」
  5. 選取位置中的 檔案網址 上傳類型:
    1. 如果您選取「File」,請瀏覽至 JSON 檔案。
    2. 如果您選取「URL」(網址),請指定 SmartDoc JSON 檔案的網址。
  6. 按一下「Import」,將模型匯入模型。
  7. 系統會將您重新導向至模型的資訊頁面,現在您可以在該頁面呈現 模型請注意,匯入作業會建立模型的新修訂版本。
  8. 轉譯並發布節點。

編輯 SmartDoc 範本

SmartDoc 範本會定義 Drupal 節點在螢幕上的顯示方式。所有 SmartDoc 可以使用相同的預設範本,您也可以手動自訂 個別模型

SmartDoc 範本包含一個以 Handlebars .hbr 檔案編碼的範本檔案、CSS 檔案 和 JavaScript 檔案使用控點時,大部分的內容都是以變數驅動的嵌入方式 處理常式運算式,例如 &123;&123;body}}。現有 Deployment 帳號代碼是在檔案頂端的註解中提供。如需深入瞭解 請參閱 http://handlebarsjs.com,瞭解使用處理常式自訂範本。

以下各節將說明如何上傳自訂 SmartDoc 範本檔案,供所有人使用 或將新的 API 匯入現有模型時,如何還原 原始預設 SmartDoc 範本檔案,以及如何修改 個別模型

上傳自訂 SmartDoc 範本檔案

您可以上傳自訂 SmartDoc 範本檔案,做為 Handlebars .hbr 檔案,做為 預設範本。

如果您想在建立範本時,使用預設的 SmartDoc 範本檔案做為起點, 自訂 SmartDoc 範本檔案,您可從以下位置下載副本: profiles/apigee/modules/custom/devconnect/smartdocs/templates/smartdocs.hbr

如何上傳自訂 SmartDoc 範本檔案:

  1. 以具備管理員或內容建立權限的使用者身分登入入口網站。
  2. 依序選取「設定」 >Drupal 中的 SmartDoc 管理選單
  3. 展開網頁的「進階設定」區域。
  4. 在「上傳自訂方法範本」下方,按一下「選擇檔案」,然後 找到 Handlebars .hbr 檔案
  5. 按一下「上傳」
  6. 按一下「儲存設定」

還原 預設 SmartDoc 範本檔案

您可以還原預設的 SmartDoc 範本檔案。一旦還原檔案,預設的 SmartDoc 建立新模型或將新 API 匯入現有模型時,會使用範本檔案 模型

如何還原預設 SmartDoc 範本檔案:

  1. 以具備管理員或內容建立權限的使用者身分登入入口網站。
  2. 依序選取「設定」 >Drupal 中的 SmartDoc 管理選單
  3. 展開網頁的「進階設定」區域。
  4. 在「上傳自訂方法範本」下方,按一下現有選項旁邊的「移除」 自訂 SmartDoc 範本檔案。
  5. 按一下「儲存設定」

修改中 想擷取個別模型的 SmartDoc 範本

您可以修改用於個別模型的範本。

如何修改獨立模型的範本:

  1. 以具備管理員或內容建立權限的使用者身分登入入口網站。
  2. 選取 內容 >SmartDoc in 點選「Drupal」管理選單
  3. 找到要編輯的模式,選取下方的「設定」作業
  4. 在「Method Template」區域中,視需要編輯範本。
  5. 按一下 [儲存範本]。
  6. 瀏覽至 Drupal 節點。您應該會在頁面看到範本變更。

設定 SmartDoc 驗證類型

SmartDoc 中定義的 API 可以是開放性,也就是說 所需的存取權安全的 API 必須在 呼叫 API。

如果是安全的 API,SmartDoc 支援下列類型的驗證:

  • 基本驗證:將基本驗證憑證做為 一組使用者名稱和密碼如果您未指定使用 OAuth 做為憑證類型,API 預設採用基本驗證
  • OAuth 2.0:第三方服務供應商驗證使用者的 憑證,確認使用者已獲得授權 API,然後核發存取權 產生下一個符記您向受保護的 API 提出 SmartDoc 要求時,SmartDoc 會建置該項要求, 並傳送給服務供應商接著,服務供應商會驗證符記 就表示應用程式尚未過期
  • 自訂符記 - 將符記值做為標頭或查詢參數,傳送給每個 請求。

針對每種驗證,您都建立一個安全性配置,用來定義 驗證特性以自訂權杖驗證為例, 安全配置會定義憑證的傳遞方式 (標頭、查詢參數、內文參數) 以及 取得憑證

安全性配置與模型的特定修訂版本相關聯。因此,假設您建立了 新的模型修訂版本,就必須重新定義該修訂版本的安全性配置

在 WADL 檔案中,您可以使用 &lt;apigee:authentication&gt; Apigee 標記來指定 API 是否需要驗證,例如 如下所示:

<method id="statusespublic_timeline" name="GET" apigee:displayName="PublicTimeline">
    ...
    <apigee:authentication required="true"/>
</method> 

如果 API 已開啟,請將 required 屬性設為 false

請注意,您無法在 WADL 檔案中指定驗證類型。只要在 可編輯 Drupal 中的節點如要進一步瞭解 WADL 檔案,請參閱 WADL 參考資料

在 Drupal 的 API 頁面上,SmartDoc 加入了以下按鈕,讓使用者指定 基本驗證憑證:

如果您編輯節點將驗證類型設為 OAuth,SmartDoc 會將 下列按鈕:

如果是自訂符記,SmartDoc 會加入下列項目:

設定中 基本驗證

如果您使用 API 進行基本驗證,則只需在 WADL 中指定 &lt;apigee:authentication&gt; 標記 可用以建立模型

如何將基本驗證套用至從 WADL 檔案以外的來源建立的方法:

  1. 以具備管理員或內容建立權限的使用者身分登入入口網站。
  2. 選取 <br>Google 文件 點選「Drupal」管理選單
  3. 選取所需模型下方的「API 修訂版本」。 作業
  4. 找到您要編輯的模型修訂版本,選取「安全性」 設定「作業」「作業」
  5. 選取「Add Security Scheme」
  6. 指定安全性配置的名稱
  7. 選取「基本」做為「類型」
  8. 選取 [提交]。
  9. 針對模型中的每個方法,編輯該方法的「安全配置」設定 調整到基本配置
    1. 選取 <br>Google 文件 點選「Drupal」管理選單
    2. 選取所需模型下方的「API 修訂版本」。 作業
    3. 針對您要編輯的模型修訂版本,選取「修訂版本」 作業部分詳細說明。
    4. 針對您要編輯的 API,選取「Edit Method」(編輯方法)
    5. 選取 API 的「Security Scheme」(安全性配置)
    6. 儲存 API。

設定中 OAuth 2.0 驗證

您可以將模型設為在 SmartDoc 中使用 OAuth 2.0,而非預設的基本文件 驗證。您會在兩個位置設定 OAuth:

  1. 在「Security」(安全性) 底下為每個模型修訂版本建立安全性配置 該修訂版本的設定
  2. 為下方模型的所有修訂版本指定用戶端 ID 和用戶端密鑰 模型的「設定」
,瞭解如何調查及移除這項存取權。

如何啟用 OAuth:

  1. 以具備管理員或內容建立權限的使用者身分登入入口網站。
  2. 選取 <br>Google 文件 點選「Drupal」管理選單
  3. 針對所需模型,選取「作業」下方的「API 修訂版本」
  4. 找到您要編輯的模型修訂版本,並選取「安全性設定」下方的「安全性設定」 作業
  5. 選取「Add Security Scheme」
  6. 指定安全性配置的名稱
  7. 選取「OAuth 2.0」做為「Type」
  8. 設定「Grant Type」
  9. 在「授權網址」欄位中輸入值。授權 網址可用來取得存取權杖。
  10. 將「Authorization Verb」設為 GET 或 POST。
  11. 輸入「Access Token URL」(存取權杖網址)。存取權杖網址就是用於 交換要求權杖來取得存取權杖
  12. 輸入「Access Token param name」
  13. 使用 In 指定傳遞權杖的方式:HeaderQueryBody.
  14. 設定 OAuth 範圍
  15. 選取 [提交]。
  16. 選取 <br>Google 文件 點選「Drupal」管理選單
  17. 針對模型,請選取「Operations」(作業) 中的「Settings」(設定)
  18. 用戶端 ID用戶端 Secret
  19. 選取「儲存範本驗證設定」
  20. 針對模型中的每個方法,編輯該方法的「安全配置」設定 您的 OAuth 安全性配置。
    1. 選取 <br>Google 文件 點選「Drupal」管理選單
    2. 選取所需模型下方的「API 修訂版本」。 作業
    3. 針對您要編輯的模型修訂版本,選取「修訂版本」 作業部分詳細說明。
    4. 針對您要編輯的 API,選取「Edit Method」(編輯方法)
    5. 選取 API 的「Security Scheme」(安全性配置)
    6. 儲存 API。

設定自訂權杖驗證

您可以將模型設為使用自訂權杖驗證。

如何啟用自訂權杖:

  1. 以具備管理員或內容建立權限的使用者身分登入入口網站。
  2. 選取 <br>Google 文件 點選「Drupal」管理選單
  3. 選取所需模型下方的「API 修訂版本」。 作業
  4. 找到您要編輯的模型修訂版本,選取「安全性」 設定「作業」「作業」
  5. 選取「Add Security Scheme」
  6. 指定安全性配置的名稱
  7. 選取「Apikey」Apikey做為「Type」Apikey
  8. 設定包含符記的「ParamName」
  9. 使用 In 指定將 符記:HeaderQuery、 或 Body
  10. 選取 [提交]。
  11. 針對模型中的每個方法,編輯該方法的「安全配置」設定 並套用至權杖配置
    1. 選取 <br>Google 文件 點選「Drupal」管理選單
    2. 選取所需模型下方的「API 修訂版本」。 作業
    3. 針對您要編輯的模型修訂版本,選取「修訂版本」 作業部分詳細說明。
    4. 針對您要編輯的 API,選取「Edit Method」(編輯方法)
    5. 選取 API 的「Security Scheme」(安全性配置)
    6. 儲存 API。

刪除模型

刪除模型後 (依序點選「內容」>「SmartDoc」,前往「刪除」 「作業」欄位時,模型就會從 Edge 機構中刪除。也就是說 其他入口網站參照模型,該模型已無法使用。如需更多資訊 請參閱「關於 SmartDoc 模型和範本」。