每個站點是一個節點,節點的身份就是它的網址。節點之間不共用數據庫,只通過 HTTP 交換 JSON 格式的「信封」。任何人都可以執行自己的節點。
發現
每類節點在固定的網址上放一份發現文件,說明自己是什麼、支援哪些語言、介面在哪裡:
| 節點 | 網址 |
|---|---|
| 菜品庫 | /.well-known/canyin-dish-hub |
| 餐館節點 | /.well-known/canyin-venue |
| 供銷站點 | /.well-known/canyin-supply-hub |
| 推薦菜品庫 | /.well-known/caipin-library |
發現文件需要站點啟用固定網址;沒有啟用時介面本身仍然可用。
公開介面
| 介面 | 內容 |
|---|---|
sxck/v1/dishes | 菜品檢索:關鍵詞、類別、菜系、分頁 |
sxck/v1/dish/{代號} | 一道菜的信封,含配料表;可取 JSON-LD |
sxck/v1/ingredients | 食材主庫 |
sxck/v1/categories | 菜品類別 |
sxgx/v1/supply | 供應目錄檢索:種類、類別、關鍵詞、分頁 |
sxcy/v1/menu | 一家餐館的多語言菜單 |
寫入與審核
- 向菜品庫或供銷站點貢獻條目:先進審核佇列,由該站的營運者接受或拒絕;可以關閉公開貢獻。
- 餐館的物資需求:預設不發佈;發佈時帶訪問令牌。
- 餐館的管理介面(建店、菜品、菜單、桌臺、訂單):要用應用程式密碼認證,會員只能操作自己名下的餐館。
數據的名稱空間
以 JSON-LD 輸出時,問道餐飲自有的詞彙用名稱空間 https://dishes.reresearch.org/canyin/ns#。
本頁是概要。完整的欄位與介面說明隨各外掛發佈。〔技術手冊的網址〕