===== Module WI4 : Du Web, Web Services, aux Services ===== == Semaine 1 : mise en place et manipulation de votre environnement de travail === |||| * Utilisation du VPN Unice nécessaire : [[http://wiki.unice.fr/display/SCSIFAQ/VPN|Howto install VPN pour Unice]] * Configuration et mise en oeuvre du Clous Microsoft Azure : {{:cours:classe_virtuelle_-_etudiant.pdf|Procédure Step by Step pour la première utilisation du Cloud Microsoft Azure}} * ** Sujet complet du TD 1 ** : {{:cours:td1_app_rep_2017_ws_-_cloud_azure_-_rappel_ws_.pdf|Travaux Dirigés : Mise en oeuvre du Cloud Microsoft Azure, Introduction à l'utilisation de Visual Studio, rappel sur le développement de clients/serveurs TCP/IP }} == Cours (1h) == ||| {{:cours:1._intro_app-rep-et-web-services-cours-1h-2015-2016.pdf|Rappel sur le Web, Web dynamique et web services}} Rem == Semaine 1 : TD (2h) == Rem ||| Rem {{:cours:td1_app_rep_2015_2016_td_http.pdf|Programmation d'un Serveur Web Minimaliste et introduction au M2M}} Autres références : {{http://www.validome.org/doc/HTML_fr/cgiperl/introduction/variablesenvironnement.htm|Les variables d'environnement et les Cgi-Bin}} [[http://www.cs.iastate.edu/~cs104/notes/cgi.html#CR07|EXEMPLES de cgi-bin]] == Semaine 2 : Cours (1h) == ||| {{:cours:2.app-rep-http-cours-1h-2015-2016.pdf|Cours HTTP}} == Semaine 2 : TD (2h) == ||| {{:cours:td2_app_rep_2015_2016_td_http.pdf|Apache sous Linux : une Serveur Web pour Services Web }} **Objectifs du TD** * DATA Statique : Web server HTTP et page HTML Statique * DATA Dynamiques : cgi-bin * DATA Exchange, first Client Serveur over Web : un cgi-bin serveur et client * REST sans le dire * Mon premier service et client REST * invocation de méthode avec GET * échanges et stockage de données (GET / PUT) - les limites sur des données émises , voir POST {{ :cours:servicesconcepts.jpg?500|}} === Semaine 3 : Cours REST, ROA, et Service Web RESTFul === ||| {{:cours:3._app-rep_introduction_roa_rest-2015-2016.pdf|Présentation Cours REST, ROA, et Service Web RESTFul}} === Semaine 3 : TD Service Web RESTFul === ||| {{:cours:td4._wcf_restful_json_2016.pdf|TD Service Web RESTFul avec WCF - Windows Communication Foundation}} === Semaine 4 : Cours SOA et Service Web WS-SOAP === ||| {{:cours:4._app-rep_introduction_ws-soap-2015-2016.pdf|Présentation Cours SOA et Service Web WS-SOAP}} === Semaine 5 : Cours / TD MetaData Exchange et Langages de Description de Service === {{:cours:5._description_de_web_services_-_wsdl-2015-2016.pdf| Cours Langage de Description de Services, ex. WSDL}} {{:cours:td5-td_services_metadata_exchange_.net-2015-2016.pdf| TD MetaData Exchange (MEX) sous WCF- Windows Communication Foundation}} ||| === Semaine 6 : Cours / Modèle ABC de WCF === {{:cours:6._services_-_modele_abc_-_wcf-2015-2016.pdf| Cours Modèle ABC de WCF}} {{:cours:td6-td_ws_recap.pdf| Client Google et Chaine de services Web }} ||| ||| ===== Annexes du Cours ===== ||| === API web Services Google === == Utilisation des Services Web de Google appelés aussi APIs == Les APIs Google sont principalement des Services Web de type REST / GET. Les paramètres d'appel sont donc présents dans l'url. Par exemple : https://maps.googleapis.com/maps/api/streetview?size=600x300&location=43.6419409,7.0306163&heading=151.78&pitch=-0.76&key= Pour chaque API vous devez créer un projet et obtenir une Clef . Ceci se déroule en 3 étapes : - [[https://console.developers.google.com/flows/enableapi?apiid=street_view_image_backend&keyType=CLIENT_SIDE&reusekey=true|Créer ou choisir un projet]] - Activer Google Street View Image API - Créer les clés appropriées == Liste des Services Web de Google == Les Services Web de Google se trouvent sur [[https://developers.google.com/products/|Google Developers]] Selon l'APIs diverses explications vous seront fournies comme : * L'algorithme utilisé par le service (ex: deep depth) * Le type et le format des paramètres de l'url utilisée (ex pour translate : ([[https://developers.google.com/apis-explorer/?hl=fr#p/translate/v2/language.translations.list|Lien vers un formulaire de test]]) * des bibliothèques fournies par API, plateforme etlangage (ex. .Net pour implémenter un === Test Automatique de Web Service === * Tags: http://blog.octo.com/automatiser-ses-tests-de-web-services-grace-a-soapui/ === Outils logiciels pour les TDs de ce Cours === == Visual Studio version Pro ( post VS 2012) == Les prochains travaux dirigés utiliseront l'IDE Visual Studio 2013 en version professionnelle. Vous pouvez récupérer une version de Visual Studio Professional 2013. Vous devez pour cela créer un compte sur https://www.dreamspark.com/Account/SignIn.aspx depuis une adresse de messagerie d'établissement scolaire (domaine). Pour nous, le compte est attaché à l'établissement POLYTECH'NICE (et non Polytech'Nice Sophia Antipolis). Vous devez alors avoir accès à des téléchargements gratuits sur la page https://www.dreamspark.com/Student/Software-Catalog.aspx. Vous pourrez télécharger Visual Studio Professional 2013 depuis https://www.dreamspark.com/Product/Product.aspx?productid=72 Vérifiez bien que vous pouvez créer un projet du type : Projet > Visual C# > WCF Si vous n'avez pas de projet type "WCF" c'est que vous n'avez pas installé de version "Pro". ATTENTION car dans ce cas VOUS NE POURREZ PAS FAIRE LES TDS !!! En cas de Pb envoyez moi un mail avec un sujet : [PB SI4 : Visual Studio 2013 Profesionnal] == cURL == ||| Il s'agit d'un utilitaire en ligne de commandes qui permet d'accéder à toutes les commandes HTTP et idéal pour tester les API REST Voici le site de téléchargement des distributions de cURL tout OS : {{http://www.paehl.com/open_source/?CURL_7.47.1|cURL}} ==== Autres Liens et Références ==== ||| [[http://www.remondo.net/building-simple-wcf-service-library/|Tutoriaux de base et avancés sur WCF]] [[http://msdn.microsoft.com/en-US/fr/library/vstudio/ms735119%28v=vs.90%29.aspx | Pages officielles de Microsofts sur Windows Communication Foundation]] ==== Evaluations et Corrections ==== Ces 6 semaines font l'objet de 2 évaluations : * une première à mi-parcours * une seconde lors de la dernière séance du module complet Voici la correction de la première évaluation {{:cours:qcm_ws_app_rep_si4_2015_correction.pdf|Correction Evaluation sur les Web Services 2015}} ==== Quelques évolutions possibles de ce cours ... ==== [[cours:bat4:notes_evolutions |Quelques évolutions possibles de ce cours ...]] ==== VOTRE AVIS NOUS INTERESSE ==== [[https://docs.google.com/forms/d/1k0orTyJFVNaiSml4eiqvixBsd3gFQwAaai-16JLjer0/viewform|Form]] ==== ARCHIVES ==== {{:drapeau_francais.jpg?30|}} [[:Internet et Réseaux | Cours Internet et Réseaux - SI4 - Polytech'Nice - Département Sciences Informatiques]] {{:drapeau_francais.jpg?30|}} [[:Applications Réparties | Cours Applications Réparties - SI4 - Polytech'Nice - Département Sciences Informatiques]] [[https://www.tigli.fr/doku.php?id=cours:app_rep_orientees_service_2015_2016| App Rep 2015 2016]] [[http://www.tigli.fr/doku.php?id=cours:app_rep_orientees_service_2013_2014| App Rep 2014 2015]]