Sobes.tech
Senior

Meséljen a Code-On-Demand elvéről.

sobes.tech MI

Válasz az MI-től

A Code-On-Demand (Kód kérésre) elv az REST-ben az interakció egyik opcionális architekturális stílusa, amikor a szerver ideiglenesen bővítheti a kliens funkcionalitását végrehajtható kód küldésével.

Ez lehetővé teszi, hogy a kliens vékonyabb legyen, részben a logikát a szerverre helyezve, amely "kérésre" töltődik be szükség esetén.

Használati példák:

  • JavaScript webalkalmazásokban: A szerver JavaScript kódot küld a böngészőnek, amely a kliens oldalon fut az interaktivitás, adatvalidálás, aszinkron kérések stb. megvalósításához.
  • Bővítmények és kiegészítők: A szerver kódot biztosíthat az alkalmazás vagy a kliens funkcionalitásának bővítéséhez.

Előnyök:

  • Az átvitt adatmennyiség csökkentése: A kód csak akkor kerül küldésre, ha szükséges.
  • Rugalmasság: A szerver dinamikusan változtathatja a kliens viselkedését.
  • Vékonyabb kliens: A kliens nem szükséges, hogy az összes lehetséges funkcionalitást előre megvalósítsa.

Hátrányok:

  • Implementációs és biztonsági komplexitás: Mechanizmus szükséges a kód megbízható továbbításához és végrehajtásához.
  • Teljesítmény: A kód betöltése és végrehajtása időt vehet igénybe.
// Weben a Code-On-Demand példája: a szerver JS-t küld a űrlap validálásához
// A szerver HTML-t küld egy űrlappal és egy szkripttel
/*
<html>
<body>
  <form id="myForm">
    <input type="text" id="myInput">
    <button type="submit">Küldés</button>
  </form>

  <script src="/validate.js"></script> // A szkript "kérésre" töltődik
</body>
</html>
*/

// A /validate.js tartalma
// Ez a kód a kliens oldalon fut a betöltés után
document.getElementById('myForm').addEventListener('submit', function(event) {
  const input = document.getElementById('myInput');
  if (input.value.trim() === '') {
    alert('A mező nem lehet üres!');
    event.preventDefault(); // Megakadályozza az űrlap küldését
  }
});