Formulix 文件← 返回網站
參考 / Formulix 0.1.0

API 參考

預覽、插入確認及週期表端點。請求中的識別字須保留原樣,不要翻譯。

驗證與 Origin

所有 /v1/* 路由均須 X-Formulix-Chave。金鑰須有效,Origin 主機名稱須屬於帳戶網域(含子網域)。Origin 由瀏覽器提供,不要在 JavaScript 手動設定。OPTIONS 允許已登記或開發環境 Origin、GET/POST 及 Content-Type/X-Formulix-Chave;實際請求仍會核對金鑰所屬帳戶的網域。

回應使用 Vary: Origin 與 Cache-Control: no-store,反映獲准的 Origin,不使用萬用字元。拒絕可能只顯示為瀏覽器 CORS 錯誤。金鑰供公開使用,並非管理憑證;瀏覽器外可偽造 Origin。撤銷金鑰與網域變更通常約5秒後生效。

設定營運方提供的 HTTPS API 網址及帳戶公開金鑰,在控制台登記編輯器網域;子網域亦受涵蓋。https://api.formulix.example 與 YOUR_PUBLIC_KEY 都是佔位範例,並非實際服務網址或金鑰。

POST /v1/calc — 預覽

JSON 為 { op, dados, idioma, notacao }。op 選擇運算,dados 提供參數。預設語言 en;notacao 選填,例如 {"decimal":"."}。回應依運算回傳 HTML、LaTeX、SVG 或輔助資料。成功請求記錄1次預覽、0次插入。

const response = await fetch('https://api.formulix.example/v1/calc', {
  method: 'POST',
  headers: {
    'Content-Type': 'application/json',
    'X-Formulix-Chave': 'YOUR_PUBLIC_KEY'
  },
  body: JSON.stringify({
    op: 'word', dados: { html: '<p>不含公式的文字</p>' },
    idioma: 'zh-Hant'
  })
});
const result = await response.json();
if (!response.ok) throw new Error(result.erro);
// { eqs: [] }

支援的運算識別字:divisao, multiplicacao, adicao, subtracao, ruffini, mmc, fatoracao, fracoes, regra3, eq1, eq2, sistema, tabela, estudo, grafico, qeq, qmassa, qdist, qvid, qtit, qpaul, qorg, qcad, qtab, word。dados 欄位依運算而異,沒有統一參數結構;請用轉接器建立請求。

POST /v1/inserir — 確認

請求包含 tipo、下列資料及選填 idioma/notacao。回應是 JSON,沒有統一外層結構,使用與預覽相同的標頭。

tipo輸入輸出與計數
formulalatex;bloco 選填{ html } 含 MathML;LaTeX 非空,最多20,000字元;1次插入。
wordhtml;rtf 選填{ html };每個轉換公式計1次,無公式為0。
grafico圖形運算的 dados{ svg, w, h, funcoes, alt };1次。
conta / quimicaop 及 dados;支援的 op,不含 grafico/word依運算回傳 { html }、{ bloco: true, html } 或 { svg, w, h, alt };1次。
{"tipo":"formula","latex":"x^2","bloco":false,"idioma":"zh-Hant"}

成功範例:{"html":"<math ...>...</math>"}。用戶端將 SVG 轉成 PNG 並上傳教學平台。計算 API 不儲存圖片。每個受理的確認(包含重新編輯)均計數,沒有依識別碼去重的冪等機制;若首次結果不明,避免自動重試確認。

GET /v1/tabela?idioma=zh-Hant

回傳週期表元素陣列 { z, s, nome, pos, cor }。即使是公開資料,仍須有效金鑰及 Origin。不計插入或預覽,仍受每分鐘請求限制。預設語言是英文。

限制

錯誤

應用程式錯誤使用 {"erro":"message"};運算驗證訊息可能在地化。

HTTP文件
400 Invalid JSON.JSON 無效或本文不是物件
401 Invalid key.金鑰缺漏、無效或撤銷
402 Monthly insertion limit reached.方案或開發月額度已滿
403 Origin not allowed for this key.此金鑰不允許該 Origin;預檢可能無本文
404 Unknown route. / Unknown operation.未知路由或運算
413 Request too large.請求本文過大
422輸入無效,查看 erro
429 Rate limit reached.每分鐘請求超限
500 Internal error.內部錯誤

/saude 無須驗證並回傳 {"ok":true},但無法證明某個金鑰能存取服務。

繁體中文介面使用 zh-Hant。Formulix 預設採小數點「.」、sin/tan、座標 (2.5, -0.25)、根 x₁/x₂ 及長除法。「直式計算」包含加、減、乘、除。臺灣教師可用於國小進退位、國中一元二次方程式與高中函數教材;香港教師可配合小學直式及中學方程、函數課題。最小公倍數(LCM)與最大公因數(香港常稱最大公因式,HCF)可並列說明。化學介面採「莫耳質量」,香港常見「摩爾質量」。請先核對校內長除法寫法;不保證符合指定課程。部分介面與錯誤可能顯示英文。