AJAX - SOP - JSONP
Restriction SOP
Le besoin
Après avoir vu les requêtes en local, il serait interessant de pouvoir requêter sur des serveurs / API distants tel que Google, Yahoo, Facebook...
C'est donc un réel besoin de pouvoir utiliser AJAX comme WebService.
Le problème : SOP
SOP : Same Origin Policy
Cet acronyme définit un concept de sécurité mis en place pour un grand nombre de langages côté client, comme le JavaScript.
Il est apparut à partir de Nestscape 2.0, avec la règle suivante : "l'intégrité d'un document d'un domaine A ne peut être modifiée par un document d'un domaine B".
Puis, la politique s'est étendue aux autres navigateurs (IE, Firefox, Opera) et langages des scripts (Adobe Flash, ...)
Cette politique impose donc une restriction sur l'origine des scripts requêtés :
- même URL de serveur
- même protocole
- même port
Exemple des contraintes de SOP sur l'origine
Exemple de restriction SOP sous Firefox