vendredi 17 octobre 2014

Autoriser les requêtes ajax cross domain sur votre site web avec le fichier .htaccess

Comment rendre votre site interrogeable en cross domain, par exemple votre API.

Ajouter dans le .htaccess :

Dans le cas présent, tous les domaines sont autorisés à faire n'importe quel type de requête ajax sur votre site web.

mercredi 8 octobre 2014

Configurer le HTTPS sur votre environnement de développement local

Vérifier que le paquet openssl est installé, sinon l'installer.
sudo apt-get install openssl
Puis générer le certificat en ligne de commande :
sudo openssl req -x509 -nodes -days 365 -newkey rsa:1024 -out /etc/apache2/server.crt -keyout /etc/apache2/server.key
Puis répondre aux questions. Attention à la question “Common Name (eg, YOUR name) []:” vous devez mettre l'url locale du projet, par exemple :
myproject.local

Ensuite, éditer le fichier /etc/apache2/ports.conf et rajoutez la ligne suivante :
Listen 443
Si le port 443 est déjà écouté, ne pas modifier ce fichier.

Editer ensuite votre virtual host. Jusqu'à maintenant il est censé ressembler à ça :
<VirtualHost *:80>
    DocumentRoot /home/me/Workspace/myproject/www
    ServerName myproject.local
 
    <Directory /home/me/Workspace/myproject/www>
 Require all granted
        AllowOverride All
    </Directory>
</VirtualHost>
Ajouter à la suite :
<VirtualHost *:443>
    DocumentRoot /home/me/Workspace/myproject/www
    ServerName myproject.local
 
    SSLEngine on
    SSLCertificateFile /etc/apache2/server.crt
    SSLCertificateKeyFile /etc/apache2/server.key
 
    <Directory /home/me/Workspace/myproject/www>
        Require all granted
        AllowOverride All
    </Directory>
</VirtualHost>
Enfin, redémarrer Apache :
sudo service apache2 restart

Appeler votre propre API en JSONP

Comment rendre votre API Silex "appelable en JSONP" depuis un autre domaine :


Et comment l'appeler depuis par exemple votre appli angularjs :

Charger une librairie dynamiquement en javascript

Disons que vous développez un tag quelconque, par exemple :

Vous aimeriez que le fichier javascript chargé en charge un autre, par exemple jquery, voici ce que vous devez mettre dans mylib.js :

Petit bonus : disons que dans ce fichier javascript mylib.js vous souhaitez charger un autre fichier javascript, en lui spécifiant dynamiquement le même domaine que mylib.js, vous utilisez alors l'id donné à la balise script du tag :