JSON-RPC 規範
lipd 通過 JSON-RPC 2.0 接口暴露 lip 的核心能力。規範性定義見 lipd 規範。
OpenRPC 規範
關於全部方法、參數與返回類型的完整且嚴格定義,請參閱我們的 OpenRPC schema:
該 schema 定義了:
- 所有可用 RPC 方法(如
Install、List、Versions)。 - 輸入參數及其類型。
- 返回值。
- 服務端發給客戶端的請求(
PrintInfo、PrintSuccess、PrintWarning、PrintError和ReportProgress),客戶端以null應答。
參數可以按位置(按 schema 中的順序)或按名稱傳遞。
環境參數
Install、Uninstall 和 Update 的最後一個參數是可選的,對應 CLI 選項 --rid:
| 參數 | 類型 | 說明 |
|---|---|---|
rid | string | null | .NET RID,例如 "win-x64"。為 null、"" 或省略時使用鎖中的值或 lip 自身的 RID。 |
Update 的 packages 參數可以為空,表示更新所有顯式安裝的包。
錯誤與取消
方法失敗時以 JSON-RPC 錯誤響應,其 message 說明原因,工作區的狀態與對應 lip 命令失敗時相同。客戶端可以用通知 $/cancelRequest { "id": <请求 id> } 取消一個尚未完成的請求:被取消的 Install、Uninstall 或 Update 會撤銷其修改,並以錯誤響應。客戶端可以在先前的請求得到響應之前發送新的請求,但發現同一工作區上已有另一個 Install、Uninstall 或 Update 在運行時,該操作會立即失敗。