Skip to content
ADP
API Design PrincipleBETA

[ADP-148] Server

概述

Server 標頭用於指示回應的伺服器軟體的名稱和版本。對 API 設計來說此處應該提供 API 名稱以及版本資訊。

指導原則

  • 可(MAY)在回應中包含 Server 標頭,以提供 API 伺服器的相關資訊。 例:MY-OPENAPI/1.0.0
  • 不應該(SHOULD NOT) 在生產環境中暴露過多的伺服器實際作業系統資訊,以減少潛在的安全風險。 不要使用:Ubuntu/18.0.0

OpenAPI 規範

以下是如何在 OpenAPI 中記錄 Server 標頭的示例:

yaml
components:
  headers:
    Server:
      description: Indicates the software used by the origin server to handle the request.
      schema:
        type: string
        example: "MY-OPENAPI/1.0.0"

TIP

根據 ADP-767,你應該(SHOULD)使用已經定義好的共用標頭檔案或至少使用 #/components/headers,以避免重新定義所有已知標頭。

範例

真實世界範例

  • 在 Microsoft Outlook 網頁的 HTTP API 回應會看到 Server: Microsoft-HTTPAPI/2.0
  • github 的則是: Server: GitHub.com

相關 ADPs

參考資料