j’ai un petit soucis avec google.maps.api request, je voudrais avoir Response de la reqête mais le message de no ‘Access-control-allow-origin’ bloque l’accès aux information.
Ce paramétrage n’est pas coté Simplicité mais coté Google.
Nous sommes bien d’accord que vous utilisez une clé d’API Google qui vous appartient ? Si oui votre problème est à régler dans votre console Google en autorisant formation1.demo.simplicite.io dans les origines autorisées ou en autorisant toutes les origines:
Non désolé je ne vois pas, attention, les changements de settings Google mettent qques temps à se mettre effectivement à jour.
Quoi qu’il en soit ce n’est pas un pb spécifique à Simplicité il y a surement plein de gens qui parlent de ça (i.e. appeler les APIs Google via jQuery.ajax()) sur le net…
Juste un point de conception: êtes vous bien certain que cet appel à sa place coté client (en Javascript UI) ? Autrement dit, cet appel ne devrait il pas être effectué coté serveur afin d’en garantir/fiabiliser l’execution ?
Pour mémoire tout ce qui se fait coté client est, par construction, contournable/inhibable/modifiable/… par n’importe quel personne qui sait un minimum se servir des outils de dev du navigateur. Donc fiabilité/sécurité nulle.
Si ce que ça fait est une règle de gestion importante pour votre métier il faut impérativement l’implémenter, comme toute règle de gestion métier, coté serveur. Si c’est juste de la “cosmétique” ou de l’ “aide à l’UX” (genre afficher une info non persistée, une carte, etc.) vous pouvez alors le faire coté client, tout le reste c’est à faire coté serveur
Pour mémoire la UI responsive force certains paramètres Ajax qui sont donc ajoutés à tout appel ajax sans avoir besoin de les spécifier à chaque appel.
Cela dit, la question que je pose sur la pertinence d’implémenter ce call coté client est importante, tout ce qui porte du métier doit être fait coté serveur car ce qui se fait coté navigateur n’est, par construction, ni fiable ni secure.
Merci david c’est déjà résolu mais maintenant je suis face à un autre problème en fait, après l’affichage des coordonnées des places à l’aide de l’API google-place je voudrais enregistrer l’image de la place retourné par l’api dans un champ input Image pour la consulter ultérieurement mais j’arrive pas à trouver une solution.
Si vous travaillez toujours coté client (navigateur) vous pouvez:
utiliser les APIs UI si vous êtes dans un composant générique de la UI responsive (ex: un formulaire d’objet métier) cf. https://www.simplicite.io/resources/documentation/04-ui/responsive.md § “Business object hooks” @Francois il faudrait ajouter un exemple explicite dans la doc qui décrive comment valoriser un champ de type document ou image depuis un byte array client
utiliser directement les APIs data “bas niveau” des objets métier Simplicité si vous êtes dans un composant specifique standalone qui ne soit pas déjà basé sur les APIs UI ci-dessus (sinon n’utilisez pas ces APIs car vous allez sans doute tomber dans des conflits de mise à jour si vous ne savez pas exactement comment fonctionne le moteur Simplicité), cf. https://www.simplicite.io/resources/documentation/03-apis/ajax-api.md (un exemple au § “Create record”)
Il faut aussi ajouter un change pour signifier que le formulaire a changé (save before close ou déclencher des contraintes Front liées à ce champ) pict.ui.val(...).change();
On a ajouté l’action UserTakePicture au socle qui peut servir d’exemple : voir le code de la ressource SCRIPT de l’objet User, on peut désormais se prendre en photo sur sa fiche Utilisateur.