「是或否」產生器是託管式是/否 API 的本機瀏覽器替代方案,適合用於手動提示,但它不提供可呼叫的 API。當您只需要一個隨意答案、本機決策提示或近期結果的簡短紀錄時,請使用此工具。它完全在目前的瀏覽器分頁中執行。
「是或否」產生器可接受選填的問題,使用瀏覽器 Web Crypto 產生「是」或「否」,並顯示最新項目在前、最多包含 20 筆項目的紀錄。問題、答案與紀錄絕不會上傳至 Lizely、不會寫入帳戶,也不會傳送至遠端服務。然而,它沒有可供應用程式呼叫的端點、沒有 SDK,也沒有記載機器可讀取的回應契約。若產品必須自動要求大量答案,本機瀏覽器介面並不能直接取代 API 整合。

API 替代方案能與不能取代的項目
搜尋者經常以兩種方式使用「API 替代方案」一詞。對一般人而言,它是指不必依賴託管式服務即可傳回二元結果的工具。對開發者而言,它可能是另一個程式能反覆呼叫的可呼叫替代方案。這個差異在於功能,而非外觀:具備「產生」按鈕的頁面無法滿足端點相依性。
- 若只需使用一次提示,本機工具可免除 API 金鑰、配額、託管端點或問題的遠端副本。
- 若用於指令碼、試算表公式、伺服器工作或行動後端,您仍然需要真正可呼叫的介面,或自行撰寫使用支援之密碼學隨機來源程式碼。
- 若用於重複的自動化決策,請驗證服務的回應結構描述、錯誤行為、驗證規則、隱私權政策與可用性時間,而不要假設每個是/否端點都提供相同的契約。
使用瀏覽器式替代方案
支援的工作流程很短,但在與託管式工具比較時,其邊界很重要。
- 開啟產生器;若您希望結果加上標籤,請輸入一個風險較低的問題。此欄位為選填,因此空白問題也是有效的內容。上限為 1,000 個 UTF-16 程式碼單位;剛好達到上限可以接受,但超出 1 個程式碼單位便會失敗,且不會截斷或產生結果。
- 檢視文字並選擇「產生是或否」。若您在產生後編輯問題,醒目顯示的目前答案與先前錯誤都會清除,以免舊結果被錯上加標籤。編輯不會移除較早的紀錄項目。
- 讀取目前答案。每次正常產生都會從瀏覽器的 Web Crypto 實作取得新的隨機 Uint32 抽樣值。若 Web Crypto 缺失、遭封鎖或擲出例外,工具會回報明確的失敗,且不會產生答案。
- 若您想比較近期提示,請使用最新項目在前的紀錄。它最多保留 20 筆項目。第 21 次產生後,最舊的項目會被移除,並以累計訊息精確指出先前已捨棄多少個答案。
- 完成後清除紀錄。清除作業會重設可見項目、已捨棄的答案數量與目前答案。
請隨意使用此工具。產生器提供的是隨機二元結果,而非關於問題是否合理、可選項目代表什麼,或應採取哪些後果的建議。
為什麼是/否對應是平衡的
在內部,每次呼叫 Crypto.getRandomValues 都會填滿一個只有單一元素的 Uint32Array,產生介於 0 到 4,294,967,295 的整數。對應器會計算不超過 2^32 來源範圍之結果數量的最大倍數:limit = floor(2^32/N) × N。當 N = 2 時,floor(2^32/2) × 2 = 2^32,因此每個有效的 Uint32 都會被接受;接受的值再對 2 取模,以決定答案。偶數會產生「是」,奇數會產生「否」,恰好將來源範圍的一半分配給每個結果。
對於一般的有限結果數量,達到或高於該上限的值會被拒絕,接受的值則透過取模進行對應。拒絕抽樣可避免在範圍無法整除時,較低索引獲得額外的來源值。有上限的 128 次抽樣迴圈可防止故障的注入來源或平台來源永久停滯。在一般的兩種結果用途中,除法完全準確,因此沒有任何有效 Uint32 需要遭到拒絕。確定性測試另外會在三種結果的邊界驗證拒絕路徑;注入值是測試接縫,而非使用者可輸入的內容。
選填問題無論填寫什麼,都不會改變下一次抽樣。問題文字、先前答案、紀錄與時間都不是對應作業的輸入。瀏覽器實作會選擇自己的底層產生器,因此工具不會公開該演算法,也不會宣稱能存取物理上的真隨機性。W3C 網路加密規範定義了 getRandomValues,而MDN 的 Crypto.getRandomValues 文件則說明其在瀏覽器中的用途。
本機瀏覽器使用與 API 相依性的比較
請依據您需要滿足的需求選擇,而不是依照「替代方案」這個字眼。
| 需求 | 本機「是或否」產生器 | 真正的 API 或自訂程式碼 |
|---|---|---|
| 主要用途 | 在單一瀏覽器分頁中進行手動、隨意的提示 | 從軟體重複發出自動要求 |
| 介面 | 可見的「產生」按鈕、答案與本機紀錄 | 具有已記載回應的可呼叫端點或函式 |
| 資料路徑 | 不上傳至 Lizely,也不寫入遠端 | 取決於供應商或您自己的伺服器設計 |
| 認證資訊 | 不需要帳戶或 API 金鑰 | 供應商專屬,或由您的實作自行定義 |
| 失敗模型 | 若 Web Crypto 無法使用或遭封鎖,便明確顯示失敗且不提供答案 | 網路、供應商、設定或應用程式錯誤 |
| 輸出目的地 | 螢幕上的答案與最多 20 筆紀錄項目 | 受 API 契約規範的機器可讀取結果 |
由於本機途徑不進行網路呼叫,也不需要帳戶,因此可避免 API 金鑰散佈、託管配額,以及對遠端服務可用性時間的依賴。代價是每個提示都需要手動操作瀏覽器,而且結果不會自動推送至其他系統。
何時必須進行真正的 API 整合
若軟體需要機器可讀取的結果,請將瀏覽器頁面視為參考工作流程,而非 SDK。關於底層技術,使用 Web Crypto 產生「是或否」答案指南會說明程式碼層面的做法;若使用託管式服務,請直接確認供應商目前的契約。
- 定義介面。指定呼叫端能否提交問題、結果與錯誤欄位包含哪些內容,以及要求是單次呼叫、批次或串流。
- 選擇並記載隨機來源。若執行環境提供 Web Crypto,請使用它。若無法使用,請回傳明確的錯誤,而不是在未告知的情況下改用 Math.random,因為隱藏的備援機制會使所述方法失去可靠性。
- 制定運作規則。對於公開端點,請決定驗證方式、速率限制、HTTPS、瀏覽器呼叫時的 CORS、記錄、保留期限與濫用防制。請將這些視為您所建置服務的需求,而不是瀏覽器產生器提供的功能。
- 測試邊界行為。檢查奇數與偶數來源值,確認每次要求都會執行新的抽樣,並測試失敗路徑。瀏覽器產生器使用這種奇偶對應,但公開端點也需要自己的契約、監控與文件。
隱私權與明確的失敗行為
本機工作流程會將問題、答案與紀錄保留在目前的瀏覽器分頁中。文字會依輸入內容儲存在本機;修剪只用來判斷紀錄是否顯示「無問題」標籤。不會將任何內容寫入帳戶或遠端服務,也不需要相依套件、網路呼叫、Clipboard API、檔案或 ObjectURL。
結果會顯示在目前瀏覽器分頁的螢幕上。當 Web Crypto 失敗時,工具不會產生答案,也不會新增紀錄項目。它刻意拒絕改用 Math.random:明確的失敗比使用不同於顯示所示來源所產生的結果更容易察覺。
隨機性無法解決的使用限制
請勿單獨使用此工具或是/否 API 進行醫療、法律、財務、安全關鍵、急診、資安、同意、僱用、資格、合規或其他高風險決策。數學上平衡的輸出無法驗證問題、找出遺漏的選項、理解後果或提供專業判斷。
連續出現「是」或「否」也很正常。彼此獨立的 50/50 抽樣可能形成連續結果,而紀錄僅供描述:它不會重新平衡後續答案、強制交替、學習偏好、替選項加權、保證小樣本中的公平性,或預測未來結果。新抽樣並不是特定答案明智的證據。
總結:當任務只是隨意且手動的提示時,「是或否」產生器是託管式 API 的適當本機替代方案。若需要軟體對軟體的呼叫,請使用已記載的端點或自行實作隨機對應;不要將瀏覽器介面視為 API 用戶端。