工作流程狀態
跨執行儲存程式碼明確寫入的業務值,無需修改工作流程定義。
工作流程狀態(Flow State)儲存程式碼主動寫入的業務值。每個值屬於某個工作流程,並按執行來源 draft 或 live 分開儲存。因此,草稿測試與正式環境執行使用各自獨立的狀態空間。
讀寫值
export default async function (inputs, context) {
const previous = await context.state.get("lastProcessedId");
await context.state.set("lastProcessedId", inputs.id);
return { previous };
}
get 回傳 JSON 值的獨立副本,或 null。set(key, null) 會刪除該值。insert 僅在鍵不存在時寫入,delete 刪除鍵,list 按順序回傳鍵名。
鍵名長度為 1–256 個 UTF-8 位元組,值必須是 JSON。配額由部署端決定,應讀取服務回傳的限制,不能假定儲存空間無限。
寫入時機
寫入會立即持久化。後續任務失敗或執行取消,都不會撤銷這些寫入。發布、回復舊版和編輯修訂版本,也不會複製或重置狀態。
狀態與節點結果、變數和執行日誌分開儲存。它適合儲存明確的業務狀態,不應作為秘密儲存,也不應被用來隱式讀取任意歷史呼叫的資料。
檢視與清理
透過部署端的工作流程狀態管理介面操作,並明確選擇 draft 或 live。清理 Live 狀態會立即影響後續正式環境執行,操作前應確認範圍及業務影響。