Envoi donnée intranet vers internet
Fermé
DoulyCreations
Messages postés
187
Date d'inscription
lundi 11 avril 2011
Statut
Membre
Dernière intervention
23 mars 2015
-
12 août 2011 à 16:42
mpmp93 Messages postés 6648 Date d'inscription mercredi 13 avril 2011 Statut Membre Dernière intervention 28 septembre 2015 - 17 août 2011 à 11:21
mpmp93 Messages postés 6648 Date d'inscription mercredi 13 avril 2011 Statut Membre Dernière intervention 28 septembre 2015 - 17 août 2011 à 11:21
A voir également:
- Envoi donnée intranet vers internet
- Gps sans internet - Guide
- Envoi de sms par internet - Guide
- Windows 7 vers windows 10 - Accueil - Mise à jour
- 35 go internet équivalent en heure ✓ - Forum Mobile
- 30 Go combien de temp d’internet - Forum Mobile
3 réponses
mpmp93
Messages postés
6648
Date d'inscription
mercredi 13 avril 2011
Statut
Membre
Dernière intervention
28 septembre 2015
1 339
17 août 2011 à 09:17
17 août 2011 à 09:17
Bonjour,
La solution s'appelle un Web Service.
Il y a deux stratégies:
- WS SOAP, le plus lourd à mon sens, mais compatible avec les architectures logicielles JAVA
- WS REST, le plus simple. On envoie les données en mode GET ou POST comme pour l'envoi des données à partir d'un formulaire.
J'explique tout ici:
http://html5.immo-scope.com/index.php?page=webservices/WsRestFullViaZendFramework
Seule contrainte, installer Zend Framework.
A+
La solution s'appelle un Web Service.
Il y a deux stratégies:
- WS SOAP, le plus lourd à mon sens, mais compatible avec les architectures logicielles JAVA
- WS REST, le plus simple. On envoie les données en mode GET ou POST comme pour l'envoi des données à partir d'un formulaire.
J'explique tout ici:
http://html5.immo-scope.com/index.php?page=webservices/WsRestFullViaZendFramework
Seule contrainte, installer Zend Framework.
A+
DoulyCreations
Messages postés
187
Date d'inscription
lundi 11 avril 2011
Statut
Membre
Dernière intervention
23 mars 2015
19
17 août 2011 à 09:55
17 août 2011 à 09:55
Merci pour cette réponse,
mais pour l'envoi d'une image d'un serveur local vers le ftp du site web en passant par un proxy je pense pas que ça soit suffisant.
A ce jour j'ai réussi à me connecter sur le FTP grâce à Curl, je récupère bien ce qu'il y a comme structure du site mais je n'arrive pas encore a envoyer de fichier sur celui-ci...
Et puis il y a une faille un peu génante, c'est que la requête par Curl se passe par ftp://........ donc avec un sniffer on peut facilement récupérer les pass du FTP...
mais pour l'envoi d'une image d'un serveur local vers le ftp du site web en passant par un proxy je pense pas que ça soit suffisant.
A ce jour j'ai réussi à me connecter sur le FTP grâce à Curl, je récupère bien ce qu'il y a comme structure du site mais je n'arrive pas encore a envoyer de fichier sur celui-ci...
Et puis il y a une faille un peu génante, c'est que la requête par Curl se passe par ftp://........ donc avec un sniffer on peut facilement récupérer les pass du FTP...
mpmp93
Messages postés
6648
Date d'inscription
mercredi 13 avril 2011
Statut
Membre
Dernière intervention
28 septembre 2015
1 339
Modifié par mpmp93 le 17/08/2011 à 10:20
Modifié par mpmp93 le 17/08/2011 à 10:20
Pour l'image:
- faire une fonction qui va lire les données de l'image et les met dans une variable
- envoyer le contenu de cette variable en mode POST
- à l'arrivée, sur le serveur client WS REST, récupérer les données de l'image dans une variable et mettre le contenu de cette variable dans un fichier avec extension jpg ou png...
- en WS REST la sécurité est aisée: le serveur a une adresse IP fixe, le client va tester cette adrresse IP. Si la requête WS REST vient pas de lui, on rejette la requête...
- en WS REST, pas besoin de FTP et autres manoeuvres bidouilleuses...
Je vous conseille vraiment cette méthode que j'applique sur plusieurs sites professionnels dont deux qui communiquent justement Intranet->Internet. J'utilise sur cette architecture le Zend Framework.
Vous posez une question. Je suis professionnel. Je prends le temps de vous répondre... Libre à vous d'estimer ma réponse insuffisante, mais je vous garantis que la stratégie du WS REST - à mon sens - me semble la plus adaptée à votre situation.
A+
- faire une fonction qui va lire les données de l'image et les met dans une variable
- envoyer le contenu de cette variable en mode POST
- à l'arrivée, sur le serveur client WS REST, récupérer les données de l'image dans une variable et mettre le contenu de cette variable dans un fichier avec extension jpg ou png...
- en WS REST la sécurité est aisée: le serveur a une adresse IP fixe, le client va tester cette adrresse IP. Si la requête WS REST vient pas de lui, on rejette la requête...
- en WS REST, pas besoin de FTP et autres manoeuvres bidouilleuses...
Je vous conseille vraiment cette méthode que j'applique sur plusieurs sites professionnels dont deux qui communiquent justement Intranet->Internet. J'utilise sur cette architecture le Zend Framework.
Vous posez une question. Je suis professionnel. Je prends le temps de vous répondre... Libre à vous d'estimer ma réponse insuffisante, mais je vous garantis que la stratégie du WS REST - à mon sens - me semble la plus adaptée à votre situation.
A+
DoulyCreations
Messages postés
187
Date d'inscription
lundi 11 avril 2011
Statut
Membre
Dernière intervention
23 mars 2015
19
17 août 2011 à 10:53
17 août 2011 à 10:53
Merci bien de votre réponse encore et désolé si je vous ai importuné. Je pensait pas que c'était possible de passer une image en donnée et la reconvertir en image à la sortie.
Je vais m'y intéressé de suite car ça a l'air d'être assez compliqué à recollé les morceaux de codes qui correspond.
Merci encore,
Cordialement
Je vais m'y intéressé de suite car ça a l'air d'être assez compliqué à recollé les morceaux de codes qui correspond.
Merci encore,
Cordialement
mpmp93
Messages postés
6648
Date d'inscription
mercredi 13 avril 2011
Statut
Membre
Dernière intervention
28 septembre 2015
1 339
17 août 2011 à 11:17
17 août 2011 à 11:17
Pour lire une image:
$nomImage = "monImage.jpg";
$lienImage = 'images/'.$nomImage; // exemple de lien vers monImage.jpg dans repertoire images
$monImage = file_get_contents($lienImage);
Ensuite, vous passez en paramètres POST $nomImage et $monImage
A l'arrivée, vous récupérez nomImage pour sauvegarder le contenu comme ceci par exemple:
file_put_contents($nomImage, $monImage);
Comme le contenu du formulaire POST géré en WS REST via le ZEND FRAMEWORK n'est pas une saisie dans un champ mais un contenu généré par programme, il peut contenir du code binaire sans trop de problème. S'il y avait des soucis, penser éventuellement à l'encoder en base64.
ATTENTION: la totalité des données en POST a une taille limitée. Donc, attention à la taille des images. En général, les serveurs n'acceptent pas plus de 2MO par formulaire POST... mais c'est variable.
A+
$nomImage = "monImage.jpg";
$lienImage = 'images/'.$nomImage; // exemple de lien vers monImage.jpg dans repertoire images
$monImage = file_get_contents($lienImage);
Ensuite, vous passez en paramètres POST $nomImage et $monImage
A l'arrivée, vous récupérez nomImage pour sauvegarder le contenu comme ceci par exemple:
file_put_contents($nomImage, $monImage);
Comme le contenu du formulaire POST géré en WS REST via le ZEND FRAMEWORK n'est pas une saisie dans un champ mais un contenu généré par programme, il peut contenir du code binaire sans trop de problème. S'il y avait des soucis, penser éventuellement à l'encoder en base64.
ATTENTION: la totalité des données en POST a une taille limitée. Donc, attention à la taille des images. En général, les serveurs n'acceptent pas plus de 2MO par formulaire POST... mais c'est variable.
A+
mpmp93
Messages postés
6648
Date d'inscription
mercredi 13 avril 2011
Statut
Membre
Dernière intervention
28 septembre 2015
1 339
17 août 2011 à 11:21
17 août 2011 à 11:21
Pour le ZEND FRAMEWORK, c'est ici:
http://framework.zend.com/manual/fr/zend.rest.client.html
Je conseille d'installer le Zend Framework sur les deux systèmes: coté serveur et coté consommateur.
- serveur Intranet avec le pseudo formulaire chargé d'envoyer les données
- serveur Internet qui reçoit les données et les écrit
A+
http://framework.zend.com/manual/fr/zend.rest.client.html
Je conseille d'installer le Zend Framework sur les deux systèmes: coté serveur et coté consommateur.
- serveur Intranet avec le pseudo formulaire chargé d'envoyer les données
- serveur Internet qui reçoit les données et les écrit
A+