As3 et les sockets : autoriser le policy-request
June 1, 2011
En utilisant la classe XMLsocket avec actionscript3 afin d'utiliser un socket, vous rencontrerez sûrement des difficultés une fois votre réalisation basculée sous un navigateur (et non via le player interne de l'éditeur d'adobe) . Pour des raisons de sécurité, flash a besoin de vérifier que votre animation a le droit d'utiliser le socket que vous souhaitez utiliser. Il s'agit du "policy-request".
Depuis flash10, un simple crossdomain.xml n'est plus suffisant. Il faut ouvrir le port 843 du serveur hébergeant le socket : flash l'interrogera automatiquement, en attendant une réponse particulière.
Plutôt que de perdre du temps à coder vous même le deuxième socket qui répondra à la connexion de flash sur le port 843, je vous propose un script perl que j'ai découvert sur internet, et qui résout très bien le problème.
Le script est téléchargeable ici : http://www.lightsphere.com/dev/articles/flash_socket_policy.html
Il s'agit d'un script perl qui, une fois lancé, écoute les connexions sur le port 843 et autorisera flash player a utiliser votre socket.
Pratique, et efficace.