Check alle échte Black Friday-deals Ook zo moe van nepaanbiedingen? Wij laten alleen échte deals zien
Toon posts:

Ajax call met dispatch functie, good practice?

Pagina: 1
Acties:

Verwijderd

Topicstarter
Stel ik geef aan mijn ajax connection een callback functie die op basis van het resultaat van de request een functie aanroept

De parameter van de dispatch functie (de response van de ajax request) bevat de functienaam , en de parameters voor de aan te roepen functie.

Mijn vraag is of dit een goed idee is, maar vooral waarom dit geen goed idee zou zijn?

Hier wat code ter illustratie:

JavaScript:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
// Reponse would be something like {"funcname": "Func1", "params": ["param1","param2"]}
function Dispatcher(request)
{
   var oResponse = JSON.parse(request.responseText);
   eval('Dispatch'+oResponse.funcname+'(oResponse);'); 
}

function DispatchFunc1(jsonresult)
{
  //Do something with json result
}


function DispatchFunc2(jsonresult)
{
  //Do something else with json result
}

  • crisp
  • Registratie: Februari 2000
  • Laatst online: 21:56

crisp

Devver

Pixelated

Daar is op zich niets mis mee hoewel ik wel een aantal veiligheden zou inbouwen - de functies die op deze manier kunnen worden aangeroepen beperken tot een lijst voorgedefinieerde functies, een check of de functie bestaat (en wel een functie is), ueberhaupt een check om te kijken of JSON.parse() wel een geldig object oplevert en last but not least: geen eval gebruiken ;)

Intentionally left blank