Forge Controller
Berkas: controllers/Api/ForgeController.php. Gateway JSON untuk NexaBig (sql + type), routing dinamis ke controller/model lain, serta red untuk mengisi sesi PHP seperti alur login internal.
← CloudController
· URL dasar: /api/forge/…
Matriks cabang index() (GET / body JSON)
| Kunci request (inti) | Alur | Hasil |
|---|---|---|
sql + type |
NexaBig($requestData) |
Eksekusi query / render data sesuai tipe (sama keluarga dengan NexaRender). |
controllers + method |
routeToController() — normalisasi nama kelas, namespace, decrypt params opsional. |
Array respons dari method controller target. |
model + method |
routeToModel() — cari kelas model, panggil method refleksi. |
Array respons dari model. |
| (tidak ada kombinasi di atas) | Default | JSON status sukses + server_time + versi stub. |
Matriks verb HTTP → method (selain index)
| Method PHP | HTTP / pemakaian | Perilaku ringkas |
|---|---|---|
red |
PUT atau slug red |
Validasi minimal user_id; setUser(), flash, visitor key; mengembalikan status sesi + session_info. |
created |
POST (fallback) |
Jika body berisi sql/type atau controllers/method atau model/method → delegasi sama seperti indeks; else echo params data. |
updated |
Slug eksplisit /api/forge/updated (verb sesuai kebutuhan); bukan fallback PATCH bawaan — verb PATCH memanggil patch() yang belum ada di kelas ini. |
Stub “updated” + data + params. Untuk dukungan PATCH native, tambahkan method patch() atau delegasikan di sana. |
deleted |
DELETE |
Stub delete + timestamp. |
Matriks runtime klien
| Runtime | Forge — catatan integrasi |
|---|---|
| Web | Cocok untuk NexaJS / SPA: JSON + sesi lewat red dengan credentials: 'include'. |
| Node.js | Gunakan untuk proxy server-ke-server; red untuk cookie kurang relevan. |
| Electron | Sama Web jika renderer memanggil API backend langsung. |
| React Native | JSON + token; hindari mengandalkan red kecuali Anda mengelola cookie secara eksplisit. |
Lanjut
OutsideController (pola paralel) · SDK runtime