Printable Version of Topic
Click here to view this topic in its original format
Forum de Prologue Community > RealBasic > utilitaire CURL


Posted by: Dominique L. 20/02/08 10:22
Je n'ai pas d'expérience avec WEBSERVICE et WEBAGENT. Par contre, je sais qu'il est possible de communiquer avec un Webservice en Abal, par l'intermédiaire de la commande "curl".

Quelques infos sur "cURL" :

'curl' est un outil en ligne de commande pour transférer des fichiers en utilisant une syntaxe URL. Les protocoles supportés sont : FTP, FTPS, HTTP, HTTPS, SCP, SFTP, TFTP, TELNET, DICT, FILE and LDAP.

La syntaxe de cette commande est la même sous Windows et sous Linux.

Site officiel : http://curl.haxx.se/

Posted by: root 20/02/08 12:36
As tu déjà pratiqué cet outil ?

Posted by: Dominique L. 20/02/08 14:38
Oui. Je l'ai utilisé sur un projet pour faire du FTPS (FTP over SLL) depuis Abal. Des collègues l'utilisent pour échanger des informations avec un serveur HTTP (remplissage et validation d'un formulaire Web et récupération du résultat). On peut donc recevoir ou envoyer des fichiers sur de nombreux protocoles, et ce sous Windows ou sous Use-IT.

Je dirais que c'est une solution simple, fiable et multi-plateforme, qui permet d'utiliser des protocoles sécurisés standards, depuis Abal ou depuis un batch.

Posted by: root 20/02/08 16:40
effectivement cela semble trés interessant
je n'ai pas trouvé de description compléte de ce que peut faire le produit, as tu ça ?

Posted by: Dominique L. 21/02/08 10:28
En résumé : http://fr.wikipedia.org/wiki/CURL
Sur le site officiel : http://curl.haxx.se/docs/

Les options sont trés nombreuses. Voici quelques exemples :

Envoyer un fichier en FTPS :
CODE
curl -v --disable-epsv -k --ftp-ssl -T fichier1.txt -u login:pass ftp://ftp.monserveur.com/


Réceptionner un fichier en FTPS :
CODE
curl -v --disable-epsv -k --ftp-ssl -o fichier2.txt -u login:pass ftp://ftp.monserveur.com/fichier1.txt


Lister le contenu d'un répertoire en FTPS :
CODE
curl -v --disable-epsv -k -l --ftp-ssl -u login:pass ftp://ftp.monserveur.com// > list.txt


Ces exemples concernent le FTPS, mais d'autres protocoles sont supportés (HTTP, SCP, etc).

Posted by: root 21/02/08 18:59
merci pour ces renseignements

Posted by: root 04/03/08 23:07
je viens de faire un petit essai
ca marche
Mais le mode VERBOSE ne sembe pas fonctionner correctement
en ligne de commande on a un paquet d'affichage bien que le mode verbose soit positionner


Posted by: Dominique L. 06/03/08 09:38
Le mode Verbose est justement le mode bavard. Si tu veux l'inverse, essaie le mode "--silent".


Posted by: root 06/03/08 10:52
ok j'aurais du lire la doc alors
--verbose moi je pensais que ca désactivait le mode verbose et ++ l'activait

Posted by: Dominique L. 06/03/08 12:10
En fait, "--verbose" signifie bien que tu actives l'option "verbose". Le double tiret signifie que c'est une option avec un nom long. Généralement, il y a l'équivalent en abrégé, mais dans ce cas, il n'y a qu'un tiret. Par exemple : "-v" pour verbose.

Je crois que c'est la syntaxe standard des commandes GNU.

Posted by: root 06/03/08 19:03
merci pour ces précision
en utilisant le mode silencieux (--silent) curl devient tout de suite MUET smile.gif
c'est mieux pour les executions en ligne de commande à partir d'une application

Merci pour tout ses renseignements

Posted by: Dominique L. 07/03/08 09:52
Pour rendre vraiment silencieux cURL depuis Abal, il faut aussi masquer la fenêtre DOS. Nous le faisons avec un lanceur fait en VisualBasic. Il y a surement d'autres solutions.

Mais l'idéal serait une meilleure intégration à Abal : une BDACURL. Pour cela, cURL existe sous forme de bibliothèque : "libcURL" (voir http://curl.haxx.se/libcurl/c/). Par contre, il faut avoir le temps et les compétences pour le faire.

Cela a déjà été exploité dans de nombreux langages ou framework :
- Ada95
- Basic
- C
- C++
- Ch
- Cocoa
- D
- Dylan
- Euphoria
- Ferite
- Gambas
- glib/GTK+
- Java
- Lisp
- Lua
- Mono
- .NET
- Object-Pascal
- OCaml
- Pascal
- Perl
- PHP
- Postgres
- Python
- R
- Rexx
- Ruby
- Scheme
- S-Lang
- Smalltalk
- SP-Forth
- SPL
- Tcl
- Visual Basic
- Q
- wxWidgets
- XBLite


Posted by: root 16/03/09 14:34
une nouvelle version depuis le mois de mars existe
V7.19.4


Posted by: GUIARD 16/03/09 18:24
yves churles ou thierry oules ... ou prologue si cela est de leur interet et que vous êtes nombreux à financer un developpement mutualisé.

Posted by: root 16/03/09 18:34
bd@net permet de communiquer avec un serveur aussi

Posted by: krb 17/03/09 08:55
salut,

pratiquant intensivement le curl avec abal, et ayant taté du bdanet, je conseilles l'utilisations de curl (ou ssh, ou autres) en lignes de commandes directement, c'est un peu de travail au début, mais c'est tres vite tres productifs.

ne perdez pas de temps à faire une bda, concentrez vous les l'exécution directe. le déploiement en sera encore + facile..

a+

Posted by: Thierry Oulès 17/03/09 15:23
Bonjour,

Nous avons développé avec Yves Churlet une BDA pour Abal qui utilise cURL sous Windows.

Avec une bda, le programme peut récupérer les erreurs au fur et à mesure de l'exécution des commandes et avoir un contrôle plus élaboré sur la communication.

Un certain nombre de fonctions Bdanet, qui est de plus bas niveau que cURL, sont également émulées à l'aide des sockets IP dans cette même Bda.

Si quelqu'un est intéressé qu'il nous contacte !

contact@microrun.fr



Posted by: yvonne 18/03/09 11:35
je viens de telecharger curl
mais à l'execution il me marque :
'cette application n'a pas pu démarrer car libeay32.dll est introuvable. la réinstallation de cette application peut corriger ce problème'
que faire ?

Posted by: root 18/03/09 12:30
si tu as choisi la version qui inclue le protocole SSL il te faut 2 dll à mettre dans ton répertoire

Posted by: yvonne 18/03/09 14:37
ok je n'ai plus l'erreur. merci root

avez vous un petit exemple de prog. abal utilisant curl ?



Posted by: root 18/03/09 18:23
un simple assign + load.go avec passage de parametre yvonne rien de plus compliqué que cela

Posted by: krb 18/03/09 18:48
qq exemples :

curl.exe -F 'file=@sms_tmp_out006.txt http://www.xxx.com/sms/sms.php -o sms_tmp_in006.txt

envoie le fichier sms_tmp_out006.txt et recupere le retour dans sms_tmp_in006.txt


fichiers\curl.exe -u user:password -o majret7.txt "http://services.yyy.com/services/?type=LST&stype=TOT&sstype=CPT&telmag=..."


attention a tjrs entourer l'url de guillemets, a cause du et commercial qui est une instruction, et en windows, et en linux...

Posted by: yvonne 19/03/09 18:50
ok merci des que je peux je vais faire des essais

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)