跳转至

Console(wings API)

為什麼需要它

要對正在運行、且有玩家在線的伺服器送 console 指令(如 list、給獎、reload 某項),又不想重啟踢人時,可透過 Pterodactyl 的 wings 本機 API 送指令,玩家無感、免重啟。

這也是關 VM 前查在線玩家的做法之一:送 list 讀回應即得當下人數。

原理(概念層)

  • 在 VM 上以 root 對 wings 的本機 API 送一個 POST 到該伺服器的 commands 端點,夾帶 node token 認證,成功回 204
  • 認證用的 node token 與端點細節存在工作區/VM 的機密設定,不列於此公開站。實際 token 抽取與送指令的腳本流程請見工作區 auto-memory 與 deploy/ 腳本。

兩個實測踩坑

  • http 不是 https:本機 wings API 用 http;誤用 https 會 SSL 失敗(curl exit 35)。
  • commands 必須是複數陣列:payload 要用 {"commands": [...]}(陣列),不是單數字串,否則指令不執行。

機密不入站

node token、伺服器 UUID、端點完整路徑等一律不寫於此。需要時到工作區機密檔 / auto-memory 取用。

何時用重啟、何時用 wings

情況 做法
技能數值 / 職業設定 / exp 表 完整重啟(reload 不套用,見 插件棧)
送一次性指令(給獎、查 list、踢人) wings API(免重啟)
kbind reload、部分插件熱重載 依插件支援,免重啟