

本文為英文版的機器翻譯版本，如內容有任何歧義或不一致之處，概以英文版為準。

# API 合約
<a name="api-contracts"></a>

每個微型前端都是一個系統，能夠封裝意見、邏輯和複雜性。交叉切割問題通常包括下列項目：
+ **設計系統** ‒ 用於開發以程式庫形式分佈UIs 的工具
+ **合成** ‒ 微型前端與應用程式 shell 互動以轉譯和繼承其內容的方式
+ **邏輯處理** ‒ 與 APIs互動以處理持久性狀態
+ **與其他微型前端互動** ‒ 案例，例如發佈和取用事件，或從一個微型前端導覽至另一個微型前端

為了加速耗用和故障診斷，通常會投資於標準化這些界面的宣告和記錄方式，包括微型前端相依性。由人類策劃的 Wiki 是個很好的開始。更具可擴展性的方法是在程式碼中將此資訊儲存為結構化中繼資料。然後，您可以使用自動化來追蹤歷史變更並提供全文搜尋，將其集中以供取用。

當微型前端涉及大量團隊時，您需要策略在團隊之間進行協調。以統一的方式共用 API 合約會成為必要項目，因為它可減少通訊負荷並改善開發人員體驗。

[OpenAPI](https://www.openapis.org/) 是 HTTP APIs 的規格語言，支援以統一的方式定義 API 介面和合約。您可以在 Amazon APIs Gateway 中使用 OpenAPI 來實作 REST API。 [ OpenAPI Amazon API Gateway](https://docs.aws.amazon.com/apigateway/latest/developerguide/api-gateway-import-api.html) 您也可以使用可在容器或虛擬機器中託管的各種開放原始碼架構。顯著的優勢是 OpenAPI 可以以一致格式自動產生文件，因此多個團隊可以使用最少的初始投資來分享知識。

當多個團隊處理微型前端時，他們通常會形成群組。在這些群組中，人們可以互相會面和學習，同時考慮和貢獻大局。這些計畫通常會定義並記錄擁有權界限、討論交叉切削的疑慮，並儘早識別解決常見問題的任何重複工作。