Developpez.com - 4D
X

Choisissez d'abord la catégorieensuite la rubrique :


URL et nouveautés 4D 2004

Date de publication : Juin 2005

Par David ADAMS
 

4ème Dimension 2004 inclut un changement significatif dans la façon dont les requêtes sont, dans certaines circonstances, envoyées d'un formulaire. Pour la première fois, les développeurs 4ème Dimension ont une totale liberté sur la façon de nommer les URLs soumisent à 4ème Dimension.

I. Résumé
II. URLS et LIRE VARIABLES FORMULAIRE WEB
III. Comment les URLs sont traités ?


I. Résumé

4ème Dimension 2004 inclut un changement significatif dans la façon dont les requêtes sont, dans certaines circonstances, envoyées d'un formulaire. Pour la première fois, les développeurs 4ème Dimension ont une totale liberté sur la façon de nommer les URLs soumisent à 4ème Dimension. Dans le passé, les formulaires soumis à un Web Server 4D avec la méthode HTTP POST, devait commencer par un 4DACTION, 4DCGI ou 4DMETHOD, comme les exemples ci-dessous :




Vous pourriez vouloir prendre le contrôle du contenu exact de ces URL pour des raison d'esthétique, de sécurité ou toute autre raison. En utilisant 4ème Dimension 2004, les requêtes peuvent désormais consister en n'importe quelle URL valide, tels que les exemples ci-dessous :






Cette note technique détaille les changements dans le Server Web de 4ème Dimension.


II. URLS et LIRE VARIABLES FORMULAIRE WEB

Le manuel 4D 2004 de Mise à jour décrit le nouveau comportement de cette commande en ces termes :

  • "Les capacités de cette commande ont été étendues dans 4ème Dimension 2004 : il est désormais possible de l'utiliser dans tous les cas, quel que soit le type d'URL envoyé au serveur Web. En particulier, elle fonctionne maintenant avec les formulaires HTML envoyant des données POST vers tout URL.

  • Dans les versions précédentes de 4ème Dimension, seules les requêtes débutant par /4DACTION, /4DMETHOD et /4DCGI ou contenant une chaîne d'interrogation pouvaient être analysées par cette commande."


Pour apprécier la modification, il est nécessaire de comprendre l'ancien fonctionnement. Les données formulaires soumises au Server Web de 4D en utilisant la méthode POST étaient disponibles à trois endroits :

  • dans $2 de la Méthode base Sur authentification Web ;

  • dans $2 de la Méthode base Sur connexion Web, si invoquée ;

  • dans les tableaux récupérés par un appel à la commande LIRE VARIABLES FORMULAIRE WEB.


Dans les précédentes versions de 4ème Dimension, les données "postées" n'étaient pas traitées si l'URL ne commençait pas avec un des mots-clés spécials de 4D. Il n'y avait pas de contournement à cette limitation native du serveur Web.


III. Comment les URLs sont traités ?

Chaque mot-clé 4D dans un URL est traité d'une façon différente par le server Web, comme résumé ci-dessous :

Mot-clé Comportement
   
4DACTION Lance la Méthode Compiler_Web, si définie
  Lance la Méthode base Sur authentification Web
  Lance la Méthode projet indiquée après le 4DACTION.
   
4DCGI Lance la Méthode Compiler_Web, si définie
  Lance la Méthode base Sur authentification Web
  Lance la Méthode base Sur connexion Web
   
4DMETHOD Lance la Méthode base Sur authentification Web
  Lance la Méthode base Sur connexion Web
  Lance la Méthode projet nommée après le 4DMETHOD, en mode contextuel.



Que se passe-t-il dans le cas d'un URL particulier, comme dans l'exemple ci-dessous ? :



Si l'URL est le chemin d'accès à un document hébergé par le serveur Web de 4D, le document est servi normalement. Sinon, 4ème Dimension traite la requête en tant qu'URL inconnu. 4D suit le même cheminement que pour un 4DCGI

URL inconnu Lance la Méthode Compiler_Web, si définie
  Lance la Méthode base Sur authentification Web
  Lance la Méthode base Sur connexion Web



Ce comportement est le même en 4D 2004 et en 4D 2003. La différence est qu'en 4D 2004, le POST est désormais disponible. Le plus simple pour extraire des données d'un formulaire est d'utiliser le code ci-dessous :

   TABLEAU TEXTE (web_form_field_noms_at;0)
   TABLEAU TEXTE (web_form_field_valeurs_at;0)
   LIRE VARIABLES FORMULAIRE WEB (web_form_field_noms_at;web_form_field_valeurs_at)


La commande LIRE VARIABLES FORMULAIRE WEB peut être appelée n'importe où dans le process traitant la requête web. Le plus pratique est de l'appeler dans la Méthode base Sur authentification Web et de garder les valeurs récupérées dans deux tableaux process pour les utiliser dans la Méthode.

__________________________________________________
Copyright © 1985-2009 4D SA - Tous droits réservés
Tous les efforts ont été faits pour que le contenu de cette note technique présente le maximum de fiabilité possible.
Néanmoins, les différents éléments composant cette note technique, et le cas échéant, le code, sont fournis sans garantie d'aucune sorte. L'auteur et 4D S.A. déclinent donc toute responsabilité quant à l'utilisation qui pourrait être faite de ces éléments, tant à l'égard de leurs utilisateurs que des tiers.
Les informations contenues dans ce document peuvent faire l'objet de modifications sans préavis et ne sauraient en aucune manière engager 4D SA. La fourniture du logiciel décrit dans ce document est régie par un octroi de licence dont les termes sont précisés par ailleurs dans la licence électronique figurant sur le support du Logiciel et de la Documentation afférente. Le logiciel et sa documentation ne peuvent être utilisés, copiés ou reproduits sur quelque support que ce soit et de quelque manière que ce soit, que conformément aux termes de cette licence.
Aucune partie de ce document ne peut être reproduite ou recopiée de quelque manière que ce soit, électronique ou mécanique, y compris par photocopie, enregistrement, archivage ou tout autre procédé de stockage, de traitement et de récupération d'informations, pour d'autres buts que l'usage personnel de l'acheteur, et ce exclusivement aux conditions contractuelles, sans la permission explicite de 4D SA.
4D, 4D Calc, 4D Draw, 4D Write, 4D Insider, 4ème Dimension ®, 4D Server, 4D Compiler ainsi que les logos 4e Dimension, sont des marques enregistrées de 4D SA.
Windows,Windows NT,Win 32s et Microsoft sont des marques enregistrées de Microsoft Corporation.
Apple, Macintosh, Power Macintosh, LaserWriter, ImageWriter, QuickTime sont des marques enregistrées ou des noms commerciaux de Apple Computer,Inc.
Mac2Win Software Copyright © 1990-2002 est un produit de Altura Software,Inc.
4D Write contient des éléments de "MacLink Plus file translation", un produit de DataViz, Inc,55 Corporate drive,Trumbull,CT,USA.
XTND Copyright 1992-2002 © 4D SA. Tous droits réservés.
XTND Technology Copyright 1989-2002 © Claris Corporation.. Tous droits réservés ACROBAT © Copyright 1987-2002, Secret Commercial Adobe Systems Inc.Tous droits réservés. ACROBAT est une marque enregistrée d'Adobe Systems Inc.
Tous les autres noms de produits ou appellations sont des marques déposées ou des noms commerciaux appartenant à leurs propriétaires respectifs.
__________________________________________________
 



Valid XHTML 1.1!Valid CSS!

Ce document est issu de http://www.developpez.com et reste la propriété exclusive de son auteur. La copie, modification et/ou distribution par quelque moyen que ce soit est soumise à l'obtention préalable de l'autorisation de l'auteur.
Contacter le responsable de la rubrique 4D