IdentifiantMot de passe
Loading...
Mot de passe oubli� ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les r�ponses en temps r�el, voter pour les messages, poser vos propres questions et recevoir la newsletter

JavaScript Discussion :

Javascript, AJAX, eval et s�curit�


Sujet :

JavaScript

  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Octobre 2011
    Messages
    14
    D�tails du profil
    Informations personnelles :
    Localisation : France, Nord (Nord Pas de Calais)

    Informations forums :
    Inscription : Octobre 2011
    Messages : 14
    Par d�faut Javascript, AJAX, eval et s�curit�
    Bonsoir � tous,

    Je suis actuellement sur un projet web avec des pages relativement interactives, j'utilise donc javascript/ajax (avec jquery).

    Jusqu'ici tout fonctionne, mais un probl�me se pose � moi, les �l�ments de la page � mettre � jour d�pendant du r�sultat de la requ�te ajax (trait�e par un script php, mais peu importe), je me retrouve rapidement avec des tas de "spaghetti code" dans mon javascript pour traiter le r�sultat. Et �a, ceymal

    Bref, j'envisage plusieurs solutions:
    - d�velopper une librairie js qui interpr�te un "pseudocode" renvoy� par le script php (r�utilisable, mais d�veloppement plus long).
    - faire renvoyer du js par le script php et proc�der � un eval. Quid de la s�curit�?
    - employer une solution existante?


    Voila, si quelqu'un � des experiences/suggestion/r�ponses sur le sujet je suis preneur

  2. #2
    Membre Expert Avatar de Willpower
    Homme Profil pro
    sans emploi
    Inscrit en
    D�cembre 2010
    Messages
    1 009
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Marne (Champagne Ardenne)

    Informations professionnelles :
    Activit� : sans emploi

    Informations forums :
    Inscription : D�cembre 2010
    Messages : 1 009
    Par d�faut
    Citation Envoy� par ZeroDivide Voir le message
    [...] (avec jquery) [...] d�velopper une librairie js qui interpr�te [...]
    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    $.getScript(url);
    // Description: Load a JavaScript file from the server using a GET HTTP request, then execute it.

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Octobre 2011
    Messages
    14
    D�tails du profil
    Informations personnelles :
    Localisation : France, Nord (Nord Pas de Calais)

    Informations forums :
    Inscription : Octobre 2011
    Messages : 14
    Par d�faut
    Mais c'est fou �a!

    Bon � priori �a correspond � un eval et n'est qu'un raccourci syntaxique, donc la question reste pos�e niveau s�curit�, c'est safe d'utiliser cette fonction en mode f�te du slip ou il y a des pr�cautions � prendre/d�conseill�? (hormis ne pas evaluer directement des input utilisateur j'entend )

  4. #4
    R�dacteur

    Avatar de Bovino
    Homme Profil pro
    D�veloppeur Web
    Inscrit en
    Juin 2008
    Messages
    23 647
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    �ge : 55
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activit� : D�veloppeur Web
    Secteur : High Tech - �diteur de logiciels

    Informations forums :
    Inscription : Juin 2008
    Messages : 23 647
    Billets dans le blog
    20
    Par d�faut
    Non, �a ne correspond pas � un eval(), au contraire, getScript() cr�e une nouvelle balise script avec comme src l'URL demand�e.
    Pas de question technique par MP !
    Tout le monde peut participer � developpez.com, vous avez une id�e, contactez-moi !
    Mes formations video2brain : La formation compl�te sur JavaScriptJavaScript et le DOM par la pratiquePHP 5 et MySQL : les fondamentaux
    Mon livre sur jQuery
    Module Firefox / Chrome d'int�gration de JSFiddle et CodePen sur le forum

  5. #5
    Membre Expert Avatar de Willpower
    Homme Profil pro
    sans emploi
    Inscrit en
    D�cembre 2010
    Messages
    1 009
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Marne (Champagne Ardenne)

    Informations professionnelles :
    Activit� : sans emploi

    Informations forums :
    Inscription : D�cembre 2010
    Messages : 1 009
    Par d�faut
    Citation Envoy� par Bovino Voir le message
    Non, �a ne correspond pas � un eval(), au contraire, getScript() cr�e une nouvelle balise script avec comme src l'URL demand�e.
    �a d�pend des version et des navigateurs, dans certains cas, getScript fera un appel ajax et l'�valuera (soit avec eval, soit en attachant un nouveau script avec le contenu de la r�ponse).

    dans le cas de l'appel ajax, ceci aura pour effet de (NICKER TON SITE ET TE FAIRE PERDRE 50% DE VISITEURS ) de ne pas �tre cross-domain.

    aussi, il faut savoir que comme pour l'eval il faut savoir qu'attacher un script ne garde pas forc�ment le contexte actuel. exemple tout simple, les scripts greasemonkey (ou extensions.JS sous chrome) utilisent un objet "window" diff�rent de celui de la page. (sous greasemonkey, on peut acc�der � celui de la page via "unsafeWindow" ) mais contiennent par contre l'objet "document" r�el de la page. Ainsi si tu attaches un script au "body" depuis l'une de ces extensions, ton script utilisera un objet "window" diff�rent de celui de ton extension et donc des variables et contexte diff�rent.

    @ZeroDivide: pour la s�curit�, effectivement si ton code est g�n�r� en fonction d'une base de donn�e g�n�r�e par les visiteurs, tu auras des risques que ce soit avec eval ou l'ajout d'un script au header. mais de toute mani�re m�me pour les requ�tes ajax, tu ne re�ois qu'un string qui sera converti en objet cot� client .. soit avec json.parse pour la plupart des navigateurs mais ceux qui ne poss�de pas cette m�thode utiliseront un simple "eval" pour reconstruire l'objet json.

  6. #6
    Membre averti
    Profil pro
    Inscrit en
    Octobre 2011
    Messages
    14
    D�tails du profil
    Informations personnelles :
    Localisation : France, Nord (Nord Pas de Calais)

    Informations forums :
    Inscription : Octobre 2011
    Messages : 14
    Par d�faut
    Ok, merci pour ces pr�cisions, je devrais pouvoir m'en tirer

+ R�pondre � la discussion
Cette discussion est r�solue.

Discussions similaires

  1. S�curit� de javascript (ajax, framework)
    Par senacle dans le forum G�n�ral JavaScript
    R�ponses: 7
    Dernier message: 29/06/2018, 15h04
  2. [AJAX] Redirection javascript & Ajax
    Par Florent08800 dans le forum G�n�ral JavaScript
    R�ponses: 6
    Dernier message: 01/02/2007, 10h22
  3. [AJAX] JavaScript, Ajax et XML
    Par tclariss dans le forum G�n�ral JavaScript
    R�ponses: 6
    Dernier message: 09/10/2006, 22h53
  4. [AJAX] Ajax, formulaire, div et select
    Par n8ken dans le forum G�n�ral JavaScript
    R�ponses: 2
    Dernier message: 23/09/2006, 10h51

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo