SlideShare una empresa de Scribd logo
1 de 51
Descargar para leer sin conexión
Technologie Web
Le 5 Novembre 2010
Présentation
Benoît Simard
• Sorti de l'IMA en 2007 (IMA 9)
• Smile (SSII / SSLL)
• 3 ans
• Spécialisé dans :
• Le web
• Le logiciel libre
• Chef de projet technique
Plan
1. Internet c'est quoi ?
2. Et le web ?
3. Le protocole HTTP
4. HTML, CSS & Javascript
5. Le serveur Apache
6. Le serveur Tomcat
7. Les applications web en Java
8. Le modèle MVC
9. Exemple de framework
Plan
 1. Internet c'est quoi ?
2. Le web, c'est quoi alors ?
3. Le protocole HTTP
4. HTML, CSS & Javascript
5. Le serveur Apache
6. Le serveur Tomcat
7. Les applications web en Java
8. Le modèle MVC
9. Exemple de framework
Internet c'est quoi ?
Vos réponses ?
Internet c'est quoi ?
Ne pas confondre Internet et Web
Le web n'est qu'une des applications
d'Internet
Internet c'est quoi ?
Voici d'autres applications d'Internet :
• Les mails (IMAP / SMTP / POP)
• La messagerie Instantanée (XMPP)
• Transfert de fichier (FTP)
• Serveur de fichier (SAMBA/CIFS)
• VOIP
Pour la petite histoire
• Le terme internet existe depuis 1983
• Internet découle d'ARPANET (1969) :
• Reliait des ordinateurs d'université
• Sponsorisé par la DARPA (Defense Advanced
Reseach Projects Agency)
• Mythe : permettre au réseaux militaires de
continuer à fonctionner malgré une attaque
massive.
• 1969 : 4 ; 1971 : 15 ; 1972 : 37
Pour la petite histoire
Internet c'est quoi ?
Internet c'est du client / Serveur
Client
• Client : est une application qui envoie des
demandes à une application distante (serveur).
• thunderbird
• fileZila
• Firefox
• Gtalk
Serveur
• Serveur : est une application dont le rôle est de
répondre de manière automatique à des
demandes clients
• Postfix / imapd
• proFTPD
• Apache
• Jabber
Client léger
• Client
• Ne traite que la couche de présentation
• Ne fait aucun traitement (ou peu)
• Pas de logiciel spécifique
• Serveur
• Serveur puissant ! Il fait tout et pour tout le
monde
• Pour un upgrade de version, il n'y a que le
serveur à mettre à jour
Client léger
Client de rhabillage
• Client
• Ne traite que la couche de présentation
• Ne fait aucun traitement (ou peu)
• Pas de logiciel spécifique
• Serveur
• Serveur puissant ! Il fait tout et pour tout le monde
• Pour un upgrade de version, il n'y a que le serveur à
mettre à jour
• Possède aussi une IHM
Client de rhabillage
Client lourd
• Client
• Fait tout le traitement
• Logiciel spécifique
• Pour les upgrades de version, on doit mettre à jour
tous les clients installés !
• Serveur
• Serveur accède aux données
• Traite l'accès aux données
• Doit gérer les transactions
Client lourd
Client / Serveur
Beaucoup d'autres
architectures ...
Client / Serveur
Internet c'est quoi ?
« Internet est un réseau
informatique qui utilise le protocole
de communication (i.e. réseau) IP
(Internet Protocol) »
Internet est basé sur le TCP/IP
La pile réseau
1. Physique
2. Liaison
3. Réseau (IP) : construit une voie de communication
entres les machines (ce sont les routes)
4. Transport (TCP & UDP) : gère la transmission des
données.
5. Session : gère les transactions (absent dans le
monde IP, sauf SIP)
6. Présentation : converti les données applicatives en
données transmises
7. Application (HTTP) : est le point d'entrée aux
services réseaux.
Le protocole réseau IP
• permettant un service d'adressage unique pour
l'ensemble des terminaux connectés
• Ne se préoccupe pas du contenu des paquets
• Ipv4
• 127.0.0.1 (32bits)
• ~ 4 milliards d'adresses (4.10^9)
• Moins de 5% d'adresse Ipv4 depuis ce mois-ci
• Ipv6
• 2001:0db8:0000:85a3:0000:0000:ac1f:8001 (128bits)
• 4.10^38
Les protocoles de transport
TCP & UDP
TCP UDP
Mode connecté ?
Nécessite d'établir une
connexion avant
d'envoyer des paquets
Non
Protocole fiable ?
Garantie de livraison
Numéro de séquence
Contrôle des données
Aucune garantie de livraison
Aucune garantie de séquence
Contrôle des données
Résumé
Protocole très fiable. On
est sur de la
transmission des
données.
Transport lent et
consommateur de
ressources
Protocole non fiable, on est
pas sur de la transmission des
données, ni de leur ordre
d'arrivée
Transport rapide et consomme
peu de ressources.
Communication
client / serveur
Communication
client / serveur
Domain Name System
« service permettant d'établir une
correspondance entre une adresse
IP et son nom de domaine »
Les informations de DNS sont
redondantes sur Internet (beaucoup
de cache) !
Plan

1. Internet c'est quoi ?
2. Le web, c'est quoi alors ?
3. Le protocole HTTP
4. HTML, CSS & Javascript
5. Le serveur Apache
6. Le serveur Tomcat
7. Les applications web en Java
8. Le modèle MVC
9. Exemple de framework
Le web, c'est quoi ?
• C'est un système hypertexte qui permet de
consulter avec un navigateur des pages d'un
site
• le web quoi !
• Un système hypertexte contient des noeuds
liés entre eux par des hyperliens
La base du web
• Architecture Client (léger) / Serveur
• Basé sur le protocole Http
URL, URN & URI
• URL : Uniform Ressource Locator
• Spécification de la localisation d’une ressource de manière
unique
• URN : Uniform Ressource Name
• Mécanisme de nommage des ressources
• urn:<Namespace>:<SpecificString>
• Namespace : identificateur de nommage (ex : isbn)
• SpecificString : chaîne de caractères spécifique désignant la
ressource de manière unique
• URI : Uniform Resource Identifier
• URI = URL + URN
• En pratique, la forme d’URI la plus utilisée est l’URL
URL
• Format :
• <protocole>://<serveur>:<port>/<chemin>/<ressour
ce>
• Attention : les caractères spéciaux doivent être
encodés !
• # = %23 | = %20 | / = %2F
• Exemple :
• http://www.ima.uco.fr
• ftp://ftp.uco.fr
• mailto://contact@bsimard.com
Les ressources web
• Ressources Statiques
• HTML
• Images
• Son
• Vidéo
• Ressources dynamiques
• Coté client : applet, javascript, ActiveX,
• Coté serveur : CGI, J2EE, PHP, .Net, ...
Le web c'est quoi ?
Et le web 2.0, c'est quoi ?
Plan

1. Internet c'est quoi ?
2. Le web, c'est quoi alors ?
3. Le protocole HTTP
4. HTML, CSS & Javascript
5. Le serveur Apache
6. Le serveur Tomcat
7. Les applications web en Java
8. Le modèle MVC
9. Exemple de framework
Le protocole HTTP
• Http://www.w3.org
• Hyper transfer protocole
• Stateless
• Protocole orienté caractères :
• Les requêtes et réponses ne sont que des
caractères
• Exemple avec un telnet / netcat
• GET www.google.fr HTTP/1.1
Le protocole HTTP
• Stateless
• Le résultat d'une requête ne dépend pas de
l'état du serveur
• Si on exécute plusieurs fois une même
requête, on obtient la même réponse
Le protocole HTTP
Request : GET www.google.fr/ HTTP/1.1
Response :
HTTP/1.1 200 OK ← Version du protocole et code de retour
Date: Mon, 01 Nov 2010 17:25:58 GMT ← la date de la réponse
Expires: -1 ← la date d'expiration de la ressource
Cache-Control: private, max-age=0 ← politique de cache
Content-Type: text/html; charset=ISO-8859-1 ← le type et l'encodage de la
réponse
Set-Cookie:
PREF=ID=e02fe0bed019bbc4:FF=0:TM=1288632358:LM=1288632358:S=UUr
mM8ba6F1ynQNc; expires=Wed, 31-Oct-2012 17:25:58 GMT; path=/;
domain=.google.fr <- Création d'un cookie
Le protocole HTTP
Request line : METHODE URI Version HTTP
Les méthodes
• OPTIONS : demande les méthodes utilisables sur l'URI
• HEAD : demande uniquement les information de l'URI
• TRACE : Fait un echo de la requête envoyé
• GET : Demande d'info sur l'URI
• POST : Demande de données à traiter par l'URI
• PUT : Demande d'enregistrement de données à l'URI
• DELETE : Demande de suppression les données pointées
par l'URI
Les codes de retrour
• 5 Classes de retour (Status-Code)
• 1XX : Information
• 2XX : Succès
• 3XX : Redirection
• 4XX : Erreur client
• 5XX : Erreur serveur
Les éléments de la requête / de
la réponse
• Cache-Control : définit la politique de cache pour la ressource
• Connection : paramètre de gestion de la connexion (ex :
Connection: close)
• Date : date du message
• Pragma : utilisé pour spécifier des comportements aux serveurs
intermédiaires (proxy)
• Transfer-Encoding : types de transformations appliquées au corps
du message
• Upgrade : spécifie quels autres protocoles supporte le client
• Via : indique les intermédiaires par lesquels est passée la requête
Les éléments de la requête / de
la réponse
• Allow : liste les méthodes autorisées
• Content-Encoding : indique l’encodage utilisé pour la
ressource (complément au type de média du Content-Type)
• Content-Language : défini la langue utilisée
• Content-length : taille du corps du message
• Content-Location : donne la véritable URI de la ressource si
celle-ci a été trouvée grâce à une autre URI
• Content-Type : le type du média (ex : text/html ; charset=ISO-
8859-1)
• Expires : date d’expiration de la ressource
• Last-Modified : date de dernière modification
Les éléments de la requête
●
Accept : définit les types de médias acceptés
●
Accept-Charset : spécifie les jeux de caractères
acceptés
●
Accept-Encoding : spécifie les types de transformations
(compressions) du message acceptés
●
Accept-Language : spécifie les langues acceptées
●
Host : spécifie le serveur (et le port) pour la requête
●
Referer : spécifie l’URI à l’origine de la requête
●
User-Agent : contient l’identifiant du navigateur client
Les codes de retour
• 200 : OK
• 301 : Moved permanently
• 302 : Moved temporarily
• 400 : Bad Request
• 401 : Unauthorized
• 403 : Forbidden
• 404 : Not Found
• 500 : Internal Server Error
• 502 : Bad Gateway
• 504 : Gateway Time-out
• 503 : Service Unvailable
Les éléments de la réponse
• Etag : identifiant d'une ressource dans la cache
(un pour chaque version de la ressource)
• Location: redirige la requête vers une autre URI
(ex : Status-Code : 3XX)
• Server: indique le type du serveur web
répondant à la requête
Le protocole HTTP
Le client exprime ses capacités
Le serveur retourne la ressource la
plus adéquate
• Langue : fr, en
• Content Type (ou Type MIME) : text/css
• Charset : utf8, ISO-8859
• Encodage : gzip
Le protocole HTTP 1.1
• Ne gère pas les sessions !
• => On utilise les cookies
• Fichiers textes stockés sur le disque dur du
client
• Informations stockées en clair
• Date d'expiration fixé par le serveur
Le protocole HTTP 1.1
• N'est pas sécurisé !
• => protocole HTTPS
• Vérification de l'identité d'un site par un
certificat
• Les données sont scriptées
L'architecture REST
• C'est une manière de construire une
application web
• Ce n'est pas un protocole ou un
format
• C'est un style d'architecture
d'application
• Respecte le protocole HTPP
L'architecture REST
• L'URI est importante
• 1 URI = 1 ressource / action
• Stateless
• Chaque opération est auto-suffisante
• Respecte le protocole HTTP
• Respecte les méthodes
• GET = SELECT
• PUT = UPDATE
• POST = INSERT
• DELETE = DELETE

Más contenido relacionado

La actualidad más candente

08 02 mise en place de serveurs virtuels apache 2
08 02 mise en place de serveurs virtuels apache 208 02 mise en place de serveurs virtuels apache 2
08 02 mise en place de serveurs virtuels apache 2Noël
 
S51 vos projets web services ibm i a l aide de php
S51   vos projets web services ibm i a l aide de phpS51   vos projets web services ibm i a l aide de php
S51 vos projets web services ibm i a l aide de phpGautier DUMAS
 
Reseau entreprise
Reseau entrepriseReseau entreprise
Reseau entrepriseSAIDRAISS2
 
Tout ce que le getting started mongo db ne vous dira pas
Tout ce que le getting started mongo db ne vous dira pasTout ce que le getting started mongo db ne vous dira pas
Tout ce que le getting started mongo db ne vous dira pasPierre-Alban DEWITTE
 
Etes vous prêts pour le succes ?
Etes vous prêts pour le succes ?Etes vous prêts pour le succes ?
Etes vous prêts pour le succes ?Steven VAN POECK
 
Exchange : Comment sécuriser un serveur Exchange 2010
Exchange : Comment sécuriser un serveur Exchange 2010Exchange : Comment sécuriser un serveur Exchange 2010
Exchange : Comment sécuriser un serveur Exchange 2010Microsoft Technet France
 
Presentation d'un cms: SPIP
Presentation d'un cms: SPIPPresentation d'un cms: SPIP
Presentation d'un cms: SPIPclemespe
 
Presentation
PresentationPresentation
Presentationbois
 

La actualidad más candente (12)

Serveur Web (1)
Serveur Web (1)Serveur Web (1)
Serveur Web (1)
 
08 02 mise en place de serveurs virtuels apache 2
08 02 mise en place de serveurs virtuels apache 208 02 mise en place de serveurs virtuels apache 2
08 02 mise en place de serveurs virtuels apache 2
 
S51 vos projets web services ibm i a l aide de php
S51   vos projets web services ibm i a l aide de phpS51   vos projets web services ibm i a l aide de php
S51 vos projets web services ibm i a l aide de php
 
Actnc2b01 bts1
Actnc2b01 bts1Actnc2b01 bts1
Actnc2b01 bts1
 
Reseau entreprise
Reseau entrepriseReseau entreprise
Reseau entreprise
 
Tout ce que le getting started mongo db ne vous dira pas
Tout ce que le getting started mongo db ne vous dira pasTout ce que le getting started mongo db ne vous dira pas
Tout ce que le getting started mongo db ne vous dira pas
 
Etes vous prêts pour le succes ?
Etes vous prêts pour le succes ?Etes vous prêts pour le succes ?
Etes vous prêts pour le succes ?
 
Resume SGBDR
Resume SGBDRResume SGBDR
Resume SGBDR
 
Exchange : Comment sécuriser un serveur Exchange 2010
Exchange : Comment sécuriser un serveur Exchange 2010Exchange : Comment sécuriser un serveur Exchange 2010
Exchange : Comment sécuriser un serveur Exchange 2010
 
Presentation d'un cms: SPIP
Presentation d'un cms: SPIPPresentation d'un cms: SPIP
Presentation d'un cms: SPIP
 
Presentation
PresentationPresentation
Presentation
 
Formation webmaster
Formation webmasterFormation webmaster
Formation webmaster
 

Destacado

Drifting cars and riders
Drifting cars and riders Drifting cars and riders
Drifting cars and riders litoslcg
 
Presentation Cyber sudoe
Presentation Cyber sudoePresentation Cyber sudoe
Presentation Cyber sudoeBOUSQUET
 
Vorstellung OberPrima Lernsprechstunde BS-Niebüll
Vorstellung OberPrima Lernsprechstunde BS-NiebüllVorstellung OberPrima Lernsprechstunde BS-Niebüll
Vorstellung OberPrima Lernsprechstunde BS-Niebülloberprima
 
Petit guide à l'usage de ceux qui intègrent un Master TAL
Petit guide à l'usage de ceux qui intègrent un Master TALPetit guide à l'usage de ceux qui intègrent un Master TAL
Petit guide à l'usage de ceux qui intègrent un Master TALAFTAL
 
Gold: Vorteile und Nachteile im Überblick - Böhms DAX-Strategie
Gold: Vorteile und Nachteile im Überblick - Böhms DAX-StrategieGold: Vorteile und Nachteile im Überblick - Böhms DAX-Strategie
Gold: Vorteile und Nachteile im Überblick - Böhms DAX-StrategieStefan Böhm
 
La tyrannie de la paresse
La tyrannie de la paresseLa tyrannie de la paresse
La tyrannie de la paressepareto35
 
QGIS jenseits von zwei Dimensionen - KAGIS-Fachtagung 2015
QGIS jenseits von zwei Dimensionen - KAGIS-Fachtagung 2015QGIS jenseits von zwei Dimensionen - KAGIS-Fachtagung 2015
QGIS jenseits von zwei Dimensionen - KAGIS-Fachtagung 2015Anita Graser
 
Guide du sans contact mobile
Guide du sans contact mobileGuide du sans contact mobile
Guide du sans contact mobileBNP Paribas
 
La stratégie de la Région pour le Haut débit
La stratégie de la Région pour le Haut débitLa stratégie de la Région pour le Haut débit
La stratégie de la Région pour le Haut débitIgniteStrasbourg
 
PréSentation Mon Entreprise Est Une ScèNe
PréSentation Mon Entreprise Est Une ScèNePréSentation Mon Entreprise Est Une ScèNe
PréSentation Mon Entreprise Est Une ScèNeagalzin
 
Journée PluriTAL 2012 - Christian Jean
Journée PluriTAL 2012 - Christian JeanJournée PluriTAL 2012 - Christian Jean
Journée PluriTAL 2012 - Christian JeanAFTAL
 
Trois rivières
Trois rivièresTrois rivières
Trois rivièreshegdms0
 

Destacado (19)

Initiation aux notions du web.2.0
Initiation aux  notions du web.2.0Initiation aux  notions du web.2.0
Initiation aux notions du web.2.0
 
Formation Web 2.0
Formation Web 2.0Formation Web 2.0
Formation Web 2.0
 
Drifting cars and riders
Drifting cars and riders Drifting cars and riders
Drifting cars and riders
 
Presentation Cyber sudoe
Presentation Cyber sudoePresentation Cyber sudoe
Presentation Cyber sudoe
 
Vorstellung OberPrima Lernsprechstunde BS-Niebüll
Vorstellung OberPrima Lernsprechstunde BS-NiebüllVorstellung OberPrima Lernsprechstunde BS-Niebüll
Vorstellung OberPrima Lernsprechstunde BS-Niebüll
 
Petit guide à l'usage de ceux qui intègrent un Master TAL
Petit guide à l'usage de ceux qui intègrent un Master TALPetit guide à l'usage de ceux qui intègrent un Master TAL
Petit guide à l'usage de ceux qui intègrent un Master TAL
 
ShriKrishnaDarshan
ShriKrishnaDarshanShriKrishnaDarshan
ShriKrishnaDarshan
 
Gold: Vorteile und Nachteile im Überblick - Böhms DAX-Strategie
Gold: Vorteile und Nachteile im Überblick - Böhms DAX-StrategieGold: Vorteile und Nachteile im Überblick - Böhms DAX-Strategie
Gold: Vorteile und Nachteile im Überblick - Böhms DAX-Strategie
 
T1 p2 d1
T1 p2 d1T1 p2 d1
T1 p2 d1
 
La tyrannie de la paresse
La tyrannie de la paresseLa tyrannie de la paresse
La tyrannie de la paresse
 
QGIS jenseits von zwei Dimensionen - KAGIS-Fachtagung 2015
QGIS jenseits von zwei Dimensionen - KAGIS-Fachtagung 2015QGIS jenseits von zwei Dimensionen - KAGIS-Fachtagung 2015
QGIS jenseits von zwei Dimensionen - KAGIS-Fachtagung 2015
 
Guide du sans contact mobile
Guide du sans contact mobileGuide du sans contact mobile
Guide du sans contact mobile
 
2 hr
2 hr 2 hr
2 hr
 
Les Fetes
Les FetesLes Fetes
Les Fetes
 
Dossier de presse financement de l'économie
Dossier de presse   financement de l'économie  Dossier de presse   financement de l'économie
Dossier de presse financement de l'économie
 
La stratégie de la Région pour le Haut débit
La stratégie de la Région pour le Haut débitLa stratégie de la Région pour le Haut débit
La stratégie de la Région pour le Haut débit
 
PréSentation Mon Entreprise Est Une ScèNe
PréSentation Mon Entreprise Est Une ScèNePréSentation Mon Entreprise Est Une ScèNe
PréSentation Mon Entreprise Est Une ScèNe
 
Journée PluriTAL 2012 - Christian Jean
Journée PluriTAL 2012 - Christian JeanJournée PluriTAL 2012 - Christian Jean
Journée PluriTAL 2012 - Christian Jean
 
Trois rivières
Trois rivièresTrois rivières
Trois rivières
 

Similar a technologie web

Les Web Services en 60 diapos chrono !
Les Web Services en 60 diapos chrono !Les Web Services en 60 diapos chrono !
Les Web Services en 60 diapos chrono !Olivier Le Goaër
 
Comprendre, utiliser et créer une API
Comprendre, utiliser et créer une APIComprendre, utiliser et créer une API
Comprendre, utiliser et créer une APIOlivia Reaney
 
Introduction au web cours.pdf
Introduction au web cours.pdfIntroduction au web cours.pdf
Introduction au web cours.pdfElomyakobi
 
Drupal 8, symfony
Drupal 8, symfonyDrupal 8, symfony
Drupal 8, symfonyjeUXdiCode
 
intro-tech-web-lp3-jan-21-slides-1-a-9.pdf
intro-tech-web-lp3-jan-21-slides-1-a-9.pdfintro-tech-web-lp3-jan-21-slides-1-a-9.pdf
intro-tech-web-lp3-jan-21-slides-1-a-9.pdfCoumbaLaobNdiaye1
 
Vincent biret azure functions et flow #AosCanadianTour (quebec)
Vincent biret azure functions et flow #AosCanadianTour (quebec)Vincent biret azure functions et flow #AosCanadianTour (quebec)
Vincent biret azure functions et flow #AosCanadianTour (quebec)Vincent Biret
 
Introduction dans la Programmation Web Course 1
Introduction dans la Programmation Web Course 1Introduction dans la Programmation Web Course 1
Introduction dans la Programmation Web Course 1Vlad Posea
 
Internet et ses services
Internet et ses servicesInternet et ses services
Internet et ses servicesAbdoulaye Dieng
 
Techniques d&rsquo;accélération des pages Web
Techniques d&rsquo;accélération des pages WebTechniques d&rsquo;accélération des pages Web
Techniques d&rsquo;accélération des pages WebMicrosoft
 
Vincent biret azure functions et flow (montreal)
Vincent biret azure functions et flow (montreal)Vincent biret azure functions et flow (montreal)
Vincent biret azure functions et flow (montreal)Vincent Biret
 
ENIB 2013-2014 - CAI Web #1: Côté navigateur 1/3
ENIB 2013-2014 - CAI Web #1: Côté navigateur 1/3ENIB 2013-2014 - CAI Web #1: Côté navigateur 1/3
ENIB 2013-2014 - CAI Web #1: Côté navigateur 1/3Horacio Gonzalez
 
Enib cours c.a.i. web - séance #1 - html5 css3-js - 1
Enib   cours c.a.i. web - séance #1 - html5 css3-js - 1Enib   cours c.a.i. web - séance #1 - html5 css3-js - 1
Enib cours c.a.i. web - séance #1 - html5 css3-js - 1Horacio Gonzalez
 

Similar a technologie web (20)

spring.pdf
spring.pdfspring.pdf
spring.pdf
 
Les Web Services en 60 diapos chrono !
Les Web Services en 60 diapos chrono !Les Web Services en 60 diapos chrono !
Les Web Services en 60 diapos chrono !
 
Comprendre, utiliser et créer une API
Comprendre, utiliser et créer une APIComprendre, utiliser et créer une API
Comprendre, utiliser et créer une API
 
WebSocket avec Java EE 7
WebSocket avec Java EE 7WebSocket avec Java EE 7
WebSocket avec Java EE 7
 
Introduction au web cours.pdf
Introduction au web cours.pdfIntroduction au web cours.pdf
Introduction au web cours.pdf
 
Drupal 8, symfony
Drupal 8, symfonyDrupal 8, symfony
Drupal 8, symfony
 
Support NodeJS avec TypeScript Express MongoDB
Support NodeJS avec TypeScript Express MongoDBSupport NodeJS avec TypeScript Express MongoDB
Support NodeJS avec TypeScript Express MongoDB
 
intro-tech-web-lp3-jan-21-slides-1-a-9.pdf
intro-tech-web-lp3-jan-21-slides-1-a-9.pdfintro-tech-web-lp3-jan-21-slides-1-a-9.pdf
intro-tech-web-lp3-jan-21-slides-1-a-9.pdf
 
Cours 8 squid.pdf
Cours 8 squid.pdfCours 8 squid.pdf
Cours 8 squid.pdf
 
Soap
SoapSoap
Soap
 
Support de cours angular
Support de cours angularSupport de cours angular
Support de cours angular
 
Vincent biret azure functions et flow #AosCanadianTour (quebec)
Vincent biret azure functions et flow #AosCanadianTour (quebec)Vincent biret azure functions et flow #AosCanadianTour (quebec)
Vincent biret azure functions et flow #AosCanadianTour (quebec)
 
Introduction dans la Programmation Web Course 1
Introduction dans la Programmation Web Course 1Introduction dans la Programmation Web Course 1
Introduction dans la Programmation Web Course 1
 
Internet et ses services
Internet et ses servicesInternet et ses services
Internet et ses services
 
Techniques d&rsquo;accélération des pages Web
Techniques d&rsquo;accélération des pages WebTechniques d&rsquo;accélération des pages Web
Techniques d&rsquo;accélération des pages Web
 
Serveurs
ServeursServeurs
Serveurs
 
Vincent biret azure functions et flow (montreal)
Vincent biret azure functions et flow (montreal)Vincent biret azure functions et flow (montreal)
Vincent biret azure functions et flow (montreal)
 
ENIB 2013-2014 - CAI Web #1: Côté navigateur 1/3
ENIB 2013-2014 - CAI Web #1: Côté navigateur 1/3ENIB 2013-2014 - CAI Web #1: Côté navigateur 1/3
ENIB 2013-2014 - CAI Web #1: Côté navigateur 1/3
 
Enib cours c.a.i. web - séance #1 - html5 css3-js - 1
Enib   cours c.a.i. web - séance #1 - html5 css3-js - 1Enib   cours c.a.i. web - séance #1 - html5 css3-js - 1
Enib cours c.a.i. web - séance #1 - html5 css3-js - 1
 
Initiation à l'intégration avec biztalk server
Initiation à l'intégration avec biztalk serverInitiation à l'intégration avec biztalk server
Initiation à l'intégration avec biztalk server
 

Más de Benoît Simard

20161020 - Paris - Retour GC
20161020  - Paris - Retour GC20161020  - Paris - Retour GC
20161020 - Paris - Retour GCBenoît Simard
 
technologie web- part4
technologie web- part4technologie web- part4
technologie web- part4Benoît Simard
 
technologie web - part3
technologie web - part3technologie web - part3
technologie web - part3Benoît Simard
 
technologie web - part2
technologie web - part2technologie web - part2
technologie web - part2Benoît Simard
 
Formation Play! framework
Formation Play! frameworkFormation Play! framework
Formation Play! frameworkBenoît Simard
 

Más de Benoît Simard (6)

Paris meetup-rdf
Paris meetup-rdfParis meetup-rdf
Paris meetup-rdf
 
20161020 - Paris - Retour GC
20161020  - Paris - Retour GC20161020  - Paris - Retour GC
20161020 - Paris - Retour GC
 
technologie web- part4
technologie web- part4technologie web- part4
technologie web- part4
 
technologie web - part3
technologie web - part3technologie web - part3
technologie web - part3
 
technologie web - part2
technologie web - part2technologie web - part2
technologie web - part2
 
Formation Play! framework
Formation Play! frameworkFormation Play! framework
Formation Play! framework
 

Último

Pas de vagues. pptx Film français
Pas de vagues.  pptx   Film     françaisPas de vagues.  pptx   Film     français
Pas de vagues. pptx Film françaisTxaruka
 
PIE-A2-P4-support stagiaires sept 22-validé.pdf
PIE-A2-P4-support stagiaires sept 22-validé.pdfPIE-A2-P4-support stagiaires sept 22-validé.pdf
PIE-A2-P4-support stagiaires sept 22-validé.pdfRiDaHAziz
 
DIGNITAS INFINITA - DIGNITÉ HUMAINE; déclaration du dicastère .pptx
DIGNITAS INFINITA - DIGNITÉ HUMAINE; déclaration du dicastère .pptxDIGNITAS INFINITA - DIGNITÉ HUMAINE; déclaration du dicastère .pptx
DIGNITAS INFINITA - DIGNITÉ HUMAINE; déclaration du dicastère .pptxMartin M Flynn
 
Présentation - Initiatives - CECOSDA - OIF - Fact Checking.pptx
Présentation - Initiatives - CECOSDA - OIF - Fact Checking.pptxPrésentation - Initiatives - CECOSDA - OIF - Fact Checking.pptx
Présentation - Initiatives - CECOSDA - OIF - Fact Checking.pptxJCAC
 
Bibdoc 2024 - Les maillons de la chaine du livre face aux enjeux écologiques.pdf
Bibdoc 2024 - Les maillons de la chaine du livre face aux enjeux écologiques.pdfBibdoc 2024 - Les maillons de la chaine du livre face aux enjeux écologiques.pdf
Bibdoc 2024 - Les maillons de la chaine du livre face aux enjeux écologiques.pdfBibdoc 37
 
Bibdoc 2024 - Ecologie du livre et creation de badge.pdf
Bibdoc 2024 - Ecologie du livre et creation de badge.pdfBibdoc 2024 - Ecologie du livre et creation de badge.pdf
Bibdoc 2024 - Ecologie du livre et creation de badge.pdfBibdoc 37
 
Chana Orloff.pptx Sculptrice franco-ukranienne
Chana Orloff.pptx Sculptrice franco-ukranienneChana Orloff.pptx Sculptrice franco-ukranienne
Chana Orloff.pptx Sculptrice franco-ukranienneTxaruka
 
Cours de Management des Systèmes d'information
Cours de Management des Systèmes d'informationCours de Management des Systèmes d'information
Cours de Management des Systèmes d'informationpapediallo3
 
Pas de vagues. pptx Film français
Pas de vagues.  pptx      Film   françaisPas de vagues.  pptx      Film   français
Pas de vagues. pptx Film françaisTxaruka
 
Potentiel du Maroc en Produits du Terroir et Stratégie Adoptée pour le dévelo...
Potentiel du Maroc en Produits du Terroir et Stratégie Adoptée pour le dévelo...Potentiel du Maroc en Produits du Terroir et Stratégie Adoptée pour le dévelo...
Potentiel du Maroc en Produits du Terroir et Stratégie Adoptée pour le dévelo...NaimDoumissi
 
Apprendre avec des top et nano influenceurs
Apprendre avec des top et nano influenceursApprendre avec des top et nano influenceurs
Apprendre avec des top et nano influenceursStagiaireLearningmat
 
Faut-il avoir peur de la technique ? (G. Gay-Para)
Faut-il avoir peur de la technique ? (G. Gay-Para)Faut-il avoir peur de la technique ? (G. Gay-Para)
Faut-il avoir peur de la technique ? (G. Gay-Para)Gabriel Gay-Para
 
La Base unique départementale - Quel bilan, au bout de 5 ans .pdf
La Base unique départementale - Quel bilan, au bout de 5 ans .pdfLa Base unique départementale - Quel bilan, au bout de 5 ans .pdf
La Base unique départementale - Quel bilan, au bout de 5 ans .pdfbdp12
 
PIE-A2-P 5- Supports stagiaires.pptx.pdf
PIE-A2-P 5- Supports stagiaires.pptx.pdfPIE-A2-P 5- Supports stagiaires.pptx.pdf
PIE-A2-P 5- Supports stagiaires.pptx.pdfRiDaHAziz
 
Vulnérabilité numérique d’usage : un enjeu pour l’aide à la réussitepdf
Vulnérabilité numérique d’usage : un enjeu pour l’aide à la réussitepdfVulnérabilité numérique d’usage : un enjeu pour l’aide à la réussitepdf
Vulnérabilité numérique d’usage : un enjeu pour l’aide à la réussitepdfSylvianeBachy
 
Bibdoc 2024 - L’Éducation aux Médias et à l’Information face à l’intelligence...
Bibdoc 2024 - L’Éducation aux Médias et à l’Information face à l’intelligence...Bibdoc 2024 - L’Éducation aux Médias et à l’Information face à l’intelligence...
Bibdoc 2024 - L’Éducation aux Médias et à l’Information face à l’intelligence...Bibdoc 37
 
Bernard Réquichot.pptx Peintre français
Bernard Réquichot.pptx   Peintre françaisBernard Réquichot.pptx   Peintre français
Bernard Réquichot.pptx Peintre françaisTxaruka
 

Último (18)

Pas de vagues. pptx Film français
Pas de vagues.  pptx   Film     françaisPas de vagues.  pptx   Film     français
Pas de vagues. pptx Film français
 
PIE-A2-P4-support stagiaires sept 22-validé.pdf
PIE-A2-P4-support stagiaires sept 22-validé.pdfPIE-A2-P4-support stagiaires sept 22-validé.pdf
PIE-A2-P4-support stagiaires sept 22-validé.pdf
 
DIGNITAS INFINITA - DIGNITÉ HUMAINE; déclaration du dicastère .pptx
DIGNITAS INFINITA - DIGNITÉ HUMAINE; déclaration du dicastère .pptxDIGNITAS INFINITA - DIGNITÉ HUMAINE; déclaration du dicastère .pptx
DIGNITAS INFINITA - DIGNITÉ HUMAINE; déclaration du dicastère .pptx
 
Présentation - Initiatives - CECOSDA - OIF - Fact Checking.pptx
Présentation - Initiatives - CECOSDA - OIF - Fact Checking.pptxPrésentation - Initiatives - CECOSDA - OIF - Fact Checking.pptx
Présentation - Initiatives - CECOSDA - OIF - Fact Checking.pptx
 
Bibdoc 2024 - Les maillons de la chaine du livre face aux enjeux écologiques.pdf
Bibdoc 2024 - Les maillons de la chaine du livre face aux enjeux écologiques.pdfBibdoc 2024 - Les maillons de la chaine du livre face aux enjeux écologiques.pdf
Bibdoc 2024 - Les maillons de la chaine du livre face aux enjeux écologiques.pdf
 
Bibdoc 2024 - Ecologie du livre et creation de badge.pdf
Bibdoc 2024 - Ecologie du livre et creation de badge.pdfBibdoc 2024 - Ecologie du livre et creation de badge.pdf
Bibdoc 2024 - Ecologie du livre et creation de badge.pdf
 
Chana Orloff.pptx Sculptrice franco-ukranienne
Chana Orloff.pptx Sculptrice franco-ukranienneChana Orloff.pptx Sculptrice franco-ukranienne
Chana Orloff.pptx Sculptrice franco-ukranienne
 
Cours de Management des Systèmes d'information
Cours de Management des Systèmes d'informationCours de Management des Systèmes d'information
Cours de Management des Systèmes d'information
 
Pas de vagues. pptx Film français
Pas de vagues.  pptx      Film   françaisPas de vagues.  pptx      Film   français
Pas de vagues. pptx Film français
 
Potentiel du Maroc en Produits du Terroir et Stratégie Adoptée pour le dévelo...
Potentiel du Maroc en Produits du Terroir et Stratégie Adoptée pour le dévelo...Potentiel du Maroc en Produits du Terroir et Stratégie Adoptée pour le dévelo...
Potentiel du Maroc en Produits du Terroir et Stratégie Adoptée pour le dévelo...
 
Apprendre avec des top et nano influenceurs
Apprendre avec des top et nano influenceursApprendre avec des top et nano influenceurs
Apprendre avec des top et nano influenceurs
 
Faut-il avoir peur de la technique ? (G. Gay-Para)
Faut-il avoir peur de la technique ? (G. Gay-Para)Faut-il avoir peur de la technique ? (G. Gay-Para)
Faut-il avoir peur de la technique ? (G. Gay-Para)
 
La Base unique départementale - Quel bilan, au bout de 5 ans .pdf
La Base unique départementale - Quel bilan, au bout de 5 ans .pdfLa Base unique départementale - Quel bilan, au bout de 5 ans .pdf
La Base unique départementale - Quel bilan, au bout de 5 ans .pdf
 
PIE-A2-P 5- Supports stagiaires.pptx.pdf
PIE-A2-P 5- Supports stagiaires.pptx.pdfPIE-A2-P 5- Supports stagiaires.pptx.pdf
PIE-A2-P 5- Supports stagiaires.pptx.pdf
 
Vulnérabilité numérique d’usage : un enjeu pour l’aide à la réussitepdf
Vulnérabilité numérique d’usage : un enjeu pour l’aide à la réussitepdfVulnérabilité numérique d’usage : un enjeu pour l’aide à la réussitepdf
Vulnérabilité numérique d’usage : un enjeu pour l’aide à la réussitepdf
 
Bibdoc 2024 - L’Éducation aux Médias et à l’Information face à l’intelligence...
Bibdoc 2024 - L’Éducation aux Médias et à l’Information face à l’intelligence...Bibdoc 2024 - L’Éducation aux Médias et à l’Information face à l’intelligence...
Bibdoc 2024 - L’Éducation aux Médias et à l’Information face à l’intelligence...
 
Bulletin des bibliotheques Burkina Faso mars 2024
Bulletin des bibliotheques Burkina Faso mars 2024Bulletin des bibliotheques Burkina Faso mars 2024
Bulletin des bibliotheques Burkina Faso mars 2024
 
Bernard Réquichot.pptx Peintre français
Bernard Réquichot.pptx   Peintre françaisBernard Réquichot.pptx   Peintre français
Bernard Réquichot.pptx Peintre français
 

technologie web

  • 1. Technologie Web Le 5 Novembre 2010
  • 2. Présentation Benoît Simard • Sorti de l'IMA en 2007 (IMA 9) • Smile (SSII / SSLL) • 3 ans • Spécialisé dans : • Le web • Le logiciel libre • Chef de projet technique
  • 3. Plan 1. Internet c'est quoi ? 2. Et le web ? 3. Le protocole HTTP 4. HTML, CSS & Javascript 5. Le serveur Apache 6. Le serveur Tomcat 7. Les applications web en Java 8. Le modèle MVC 9. Exemple de framework
  • 4. Plan  1. Internet c'est quoi ? 2. Le web, c'est quoi alors ? 3. Le protocole HTTP 4. HTML, CSS & Javascript 5. Le serveur Apache 6. Le serveur Tomcat 7. Les applications web en Java 8. Le modèle MVC 9. Exemple de framework
  • 5. Internet c'est quoi ? Vos réponses ?
  • 6. Internet c'est quoi ? Ne pas confondre Internet et Web Le web n'est qu'une des applications d'Internet
  • 7. Internet c'est quoi ? Voici d'autres applications d'Internet : • Les mails (IMAP / SMTP / POP) • La messagerie Instantanée (XMPP) • Transfert de fichier (FTP) • Serveur de fichier (SAMBA/CIFS) • VOIP
  • 8. Pour la petite histoire • Le terme internet existe depuis 1983 • Internet découle d'ARPANET (1969) : • Reliait des ordinateurs d'université • Sponsorisé par la DARPA (Defense Advanced Reseach Projects Agency) • Mythe : permettre au réseaux militaires de continuer à fonctionner malgré une attaque massive. • 1969 : 4 ; 1971 : 15 ; 1972 : 37
  • 9. Pour la petite histoire
  • 10. Internet c'est quoi ? Internet c'est du client / Serveur
  • 11. Client • Client : est une application qui envoie des demandes à une application distante (serveur). • thunderbird • fileZila • Firefox • Gtalk
  • 12. Serveur • Serveur : est une application dont le rôle est de répondre de manière automatique à des demandes clients • Postfix / imapd • proFTPD • Apache • Jabber
  • 13. Client léger • Client • Ne traite que la couche de présentation • Ne fait aucun traitement (ou peu) • Pas de logiciel spécifique • Serveur • Serveur puissant ! Il fait tout et pour tout le monde • Pour un upgrade de version, il n'y a que le serveur à mettre à jour
  • 15. Client de rhabillage • Client • Ne traite que la couche de présentation • Ne fait aucun traitement (ou peu) • Pas de logiciel spécifique • Serveur • Serveur puissant ! Il fait tout et pour tout le monde • Pour un upgrade de version, il n'y a que le serveur à mettre à jour • Possède aussi une IHM
  • 17. Client lourd • Client • Fait tout le traitement • Logiciel spécifique • Pour les upgrades de version, on doit mettre à jour tous les clients installés ! • Serveur • Serveur accède aux données • Traite l'accès aux données • Doit gérer les transactions
  • 19. Client / Serveur Beaucoup d'autres architectures ...
  • 21. Internet c'est quoi ? « Internet est un réseau informatique qui utilise le protocole de communication (i.e. réseau) IP (Internet Protocol) » Internet est basé sur le TCP/IP
  • 22. La pile réseau 1. Physique 2. Liaison 3. Réseau (IP) : construit une voie de communication entres les machines (ce sont les routes) 4. Transport (TCP & UDP) : gère la transmission des données. 5. Session : gère les transactions (absent dans le monde IP, sauf SIP) 6. Présentation : converti les données applicatives en données transmises 7. Application (HTTP) : est le point d'entrée aux services réseaux.
  • 23. Le protocole réseau IP • permettant un service d'adressage unique pour l'ensemble des terminaux connectés • Ne se préoccupe pas du contenu des paquets • Ipv4 • 127.0.0.1 (32bits) • ~ 4 milliards d'adresses (4.10^9) • Moins de 5% d'adresse Ipv4 depuis ce mois-ci • Ipv6 • 2001:0db8:0000:85a3:0000:0000:ac1f:8001 (128bits) • 4.10^38
  • 24. Les protocoles de transport TCP & UDP TCP UDP Mode connecté ? Nécessite d'établir une connexion avant d'envoyer des paquets Non Protocole fiable ? Garantie de livraison Numéro de séquence Contrôle des données Aucune garantie de livraison Aucune garantie de séquence Contrôle des données Résumé Protocole très fiable. On est sur de la transmission des données. Transport lent et consommateur de ressources Protocole non fiable, on est pas sur de la transmission des données, ni de leur ordre d'arrivée Transport rapide et consomme peu de ressources.
  • 27. Domain Name System « service permettant d'établir une correspondance entre une adresse IP et son nom de domaine » Les informations de DNS sont redondantes sur Internet (beaucoup de cache) !
  • 28. Plan  1. Internet c'est quoi ? 2. Le web, c'est quoi alors ? 3. Le protocole HTTP 4. HTML, CSS & Javascript 5. Le serveur Apache 6. Le serveur Tomcat 7. Les applications web en Java 8. Le modèle MVC 9. Exemple de framework
  • 29. Le web, c'est quoi ? • C'est un système hypertexte qui permet de consulter avec un navigateur des pages d'un site • le web quoi ! • Un système hypertexte contient des noeuds liés entre eux par des hyperliens
  • 30. La base du web • Architecture Client (léger) / Serveur • Basé sur le protocole Http
  • 31. URL, URN & URI • URL : Uniform Ressource Locator • Spécification de la localisation d’une ressource de manière unique • URN : Uniform Ressource Name • Mécanisme de nommage des ressources • urn:<Namespace>:<SpecificString> • Namespace : identificateur de nommage (ex : isbn) • SpecificString : chaîne de caractères spécifique désignant la ressource de manière unique • URI : Uniform Resource Identifier • URI = URL + URN • En pratique, la forme d’URI la plus utilisée est l’URL
  • 32. URL • Format : • <protocole>://<serveur>:<port>/<chemin>/<ressour ce> • Attention : les caractères spéciaux doivent être encodés ! • # = %23 | = %20 | / = %2F • Exemple : • http://www.ima.uco.fr • ftp://ftp.uco.fr • mailto://contact@bsimard.com
  • 33. Les ressources web • Ressources Statiques • HTML • Images • Son • Vidéo • Ressources dynamiques • Coté client : applet, javascript, ActiveX, • Coté serveur : CGI, J2EE, PHP, .Net, ...
  • 34. Le web c'est quoi ? Et le web 2.0, c'est quoi ?
  • 35. Plan  1. Internet c'est quoi ? 2. Le web, c'est quoi alors ? 3. Le protocole HTTP 4. HTML, CSS & Javascript 5. Le serveur Apache 6. Le serveur Tomcat 7. Les applications web en Java 8. Le modèle MVC 9. Exemple de framework
  • 36. Le protocole HTTP • Http://www.w3.org • Hyper transfer protocole • Stateless • Protocole orienté caractères : • Les requêtes et réponses ne sont que des caractères • Exemple avec un telnet / netcat • GET www.google.fr HTTP/1.1
  • 37. Le protocole HTTP • Stateless • Le résultat d'une requête ne dépend pas de l'état du serveur • Si on exécute plusieurs fois une même requête, on obtient la même réponse
  • 38. Le protocole HTTP Request : GET www.google.fr/ HTTP/1.1 Response : HTTP/1.1 200 OK ← Version du protocole et code de retour Date: Mon, 01 Nov 2010 17:25:58 GMT ← la date de la réponse Expires: -1 ← la date d'expiration de la ressource Cache-Control: private, max-age=0 ← politique de cache Content-Type: text/html; charset=ISO-8859-1 ← le type et l'encodage de la réponse Set-Cookie: PREF=ID=e02fe0bed019bbc4:FF=0:TM=1288632358:LM=1288632358:S=UUr mM8ba6F1ynQNc; expires=Wed, 31-Oct-2012 17:25:58 GMT; path=/; domain=.google.fr <- Création d'un cookie
  • 39. Le protocole HTTP Request line : METHODE URI Version HTTP
  • 40. Les méthodes • OPTIONS : demande les méthodes utilisables sur l'URI • HEAD : demande uniquement les information de l'URI • TRACE : Fait un echo de la requête envoyé • GET : Demande d'info sur l'URI • POST : Demande de données à traiter par l'URI • PUT : Demande d'enregistrement de données à l'URI • DELETE : Demande de suppression les données pointées par l'URI
  • 41. Les codes de retrour • 5 Classes de retour (Status-Code) • 1XX : Information • 2XX : Succès • 3XX : Redirection • 4XX : Erreur client • 5XX : Erreur serveur
  • 42. Les éléments de la requête / de la réponse • Cache-Control : définit la politique de cache pour la ressource • Connection : paramètre de gestion de la connexion (ex : Connection: close) • Date : date du message • Pragma : utilisé pour spécifier des comportements aux serveurs intermédiaires (proxy) • Transfer-Encoding : types de transformations appliquées au corps du message • Upgrade : spécifie quels autres protocoles supporte le client • Via : indique les intermédiaires par lesquels est passée la requête
  • 43. Les éléments de la requête / de la réponse • Allow : liste les méthodes autorisées • Content-Encoding : indique l’encodage utilisé pour la ressource (complément au type de média du Content-Type) • Content-Language : défini la langue utilisée • Content-length : taille du corps du message • Content-Location : donne la véritable URI de la ressource si celle-ci a été trouvée grâce à une autre URI • Content-Type : le type du média (ex : text/html ; charset=ISO- 8859-1) • Expires : date d’expiration de la ressource • Last-Modified : date de dernière modification
  • 44. Les éléments de la requête ● Accept : définit les types de médias acceptés ● Accept-Charset : spécifie les jeux de caractères acceptés ● Accept-Encoding : spécifie les types de transformations (compressions) du message acceptés ● Accept-Language : spécifie les langues acceptées ● Host : spécifie le serveur (et le port) pour la requête ● Referer : spécifie l’URI à l’origine de la requête ● User-Agent : contient l’identifiant du navigateur client
  • 45. Les codes de retour • 200 : OK • 301 : Moved permanently • 302 : Moved temporarily • 400 : Bad Request • 401 : Unauthorized • 403 : Forbidden • 404 : Not Found • 500 : Internal Server Error • 502 : Bad Gateway • 504 : Gateway Time-out • 503 : Service Unvailable
  • 46. Les éléments de la réponse • Etag : identifiant d'une ressource dans la cache (un pour chaque version de la ressource) • Location: redirige la requête vers une autre URI (ex : Status-Code : 3XX) • Server: indique le type du serveur web répondant à la requête
  • 47. Le protocole HTTP Le client exprime ses capacités Le serveur retourne la ressource la plus adéquate • Langue : fr, en • Content Type (ou Type MIME) : text/css • Charset : utf8, ISO-8859 • Encodage : gzip
  • 48. Le protocole HTTP 1.1 • Ne gère pas les sessions ! • => On utilise les cookies • Fichiers textes stockés sur le disque dur du client • Informations stockées en clair • Date d'expiration fixé par le serveur
  • 49. Le protocole HTTP 1.1 • N'est pas sécurisé ! • => protocole HTTPS • Vérification de l'identité d'un site par un certificat • Les données sont scriptées
  • 50. L'architecture REST • C'est une manière de construire une application web • Ce n'est pas un protocole ou un format • C'est un style d'architecture d'application • Respecte le protocole HTPP
  • 51. L'architecture REST • L'URI est importante • 1 URI = 1 ressource / action • Stateless • Chaque opération est auto-suffisante • Respecte le protocole HTTP • Respecte les méthodes • GET = SELECT • PUT = UPDATE • POST = INSERT • DELETE = DELETE