> ## Documentation Index
> Fetch the complete documentation index at: https://ayakaleaf-pro.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

# 概覽

Overleaf 以多個服務的形式執行，這些服務在 Docker 網路內透過 HTTP 互相呼叫。本節的頁面說明這些內部 API。內容來自 [`develop/hoppscotch/openapi/`](https://github.com/ayaka-notes/ayakaleaf-pro/tree/server-pro/develop/hoppscotch/openapi) 中的 OpenAPI 檔案，這些檔案依據各服務的程式碼撰寫。

這些 API 都不是公開的：它們只能在 Docker 網路內存取，而且大多數沒有驗證。

## 服務

| 服務 | 位址 | 作用 |
| - | - | - |
| [web](https://ayakaleaf-pro.mintlify.site/zh-TW/dev/service-api/web.md) | `http://web:3000` | 主應用程式。其私有 API 由其他服務與映像檔中的 cron 指令碼呼叫 |
| [document-updater](https://ayakaleaf-pro.mintlify.site/zh-TW/dev/service-api/document-updater.md) | `http://document-updater:3003` | 將編輯器中開啟的文件保存在 Redis 中，套用編輯並寫回 Mongo |
| [docstore](https://ayakaleaf-pro.mintlify.site/zh-TW/dev/service-api/docstore.md) | `http://docstore:3016` | 將每個專案的每份文件儲存在 Mongo 的 `docs` 集合中 |
| [real-time](https://ayakaleaf-pro.mintlify.site/zh-TW/dev/service-api/real-time.md) | `http://real-time:3026` | 維持編輯器的 socket.io 連線，在瀏覽器與服務之間轉送編輯 |
| [chat](https://ayakaleaf-pro.mintlify.site/zh-TW/dev/service-api/chat.md) | `http://chat:3010` | 儲存專案聊天與留言串 |
| [project-history](https://ayakaleaf-pro.mintlify.site/zh-TW/dev/service-api/project-history.md) | `http://project-history:3054` | 將排入佇列的編輯轉換為歷史變更並傳送給 history-v1；保存標籤 |
| [history-v1](https://ayakaleaf-pro.mintlify.site/zh-TW/dev/service-api/history-v1.md) | `http://history-v1:3100` | 儲存每個專案的完整歷史，並以 blob 形式儲存檔案內容 |
| [filestore](https://ayakaleaf-pro.mintlify.site/zh-TW/dev/service-api/filestore.md) | `http://filestore:3009` | 提供範本檔案，並以唯讀方式提供 history-v1 寫入的 blob |
| [clsi](https://ayakaleaf-pro.mintlify.site/zh-TW/dev/service-api/clsi.md) | `http://clsi:3013` | 編譯專案，執行 SyncTeX 與字數統計，轉換文件 |
| [notifications](https://ayakaleaf-pro.mintlify.site/zh-TW/dev/service-api/notifications.md) | `http://notifications:3042` | 儲存專案清單中顯示的通知 |
| [linked-url-proxy](https://ayakaleaf-pro.mintlify.site/zh-TW/dev/service-api/linked-url-proxy.md) | `http://linked-url-proxy:3066` | 為 web 擷取外部 URL 並拒絕內部位址 |
| [third-party-datastore](https://ayakaleaf-pro.mintlify.site/zh-TW/dev/service-api/third-party-datastore.md) | `http://third-party-datastore:3002` | 透過每位使用者一個工作佇列將專案與 Dropbox 同步 |

## 驗證

* **web：**使用 `WEB_API_USER` 與 `WEB_API_PASSWORD` 的 HTTP 基本驗證。git-bridge 路由改用個人存取權杖。
* **history-v1：**使用 `STAGING_PASSWORD` 以 `staging` 身分進行 HTTP 基本驗證，或使用 JWT。
* **其他所有服務：**無。

## 試用

開發環境在 `http://localhost:9170` 上執行 [Hoppscotch](https://github.com/hoppscotch/hoppscotch)，並配有透過 Docker 位址存取各服務的代理。其 [README](https://github.com/ayaka-notes/ayakaleaf-pro/blob/server-pro/develop/README.md#hoppscotch) 說明如何設定代理與匯入 OpenAPI 檔案。


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.