Une réflexion au sujet de « jQuery: comment utiliser autocomplete avec .live() »

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *

jQuery: effectuer une requête AJAX synchrone

Le code suivant est un exemple de requete AJAX effectuée avec jQuery.

var string = 'default';
$.get('/index/test',
  {string: 'test'},
  function(data){
    string = data;
  }
);
alert(string);

Le problème avec ce code est que la valeur de « string » va être affichée avant qu’elle soit mise à jour par la requête AJAX. En effet, la suite du code est exécutée avant que la requête soit terminée. La valeur de « string » va donc être « default ».

Pour ordonner à Javascript d’attendre la fin de la requête pour continuer l’exécution du code, il faut insérer la ligne suivante avant l’exécution de la requête:

$.ajaxSetup({async: false});

Exemple:

var string = 'default';
$.ajaxSetup({async: false});
$.get('/index/test',
  {string: 'test'},
  function(data){
    string = data;
  }
);
alert(string);
//pour remettre la valeur par défaut:
$.ajaxSetup({async: true});

Cette fois ci, la valeur de « string » lors de son affichage sera « test ».

Une réflexion au sujet de « jQuery: effectuer une requête AJAX synchrone »

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *

Comment lire une vidéo depuis l’api de Subsonic

Petit rappel pour ceux qui ne connaissent pas, Subsonic est un clone de Deezer qui permet, une fois installé sur votre serveur, de lire des musiques et aussi des vidéos depuis une interface web.

Pour moi, utiliser l’api de Subsonic pour lire des vidéos en Streaming a été un peu compliqué. Je voulais simplement lire le flux renvoyé par Subsonic quand on appel la méthode http://your-server/rest/stream.view mais la documentation à ce sujet est quasi inexistante…

Voici donc une petite démo pour parvenir à lire ce flux.

Fichier HTML ou va être placé le lecteur. N’oubliez pas de changer la valeur des variables par les vôtres!

<html>
	<head>
		<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
		<script type="text/javascript" src="/subsonic_api/script/swfobject.js"></script>
		<script type="text/javascript" src="/subsonic_api/script/prototype.js"></script>
		<script type="text/javascript" src="/subsonic_api/script/subsonic.js"></script>
		<script type="text/javascript" language="javascript">
			var subsonicServer ="http://yourserver";
			var videoid="subsonic file id";
			var subsonicUsr ="subsonic_usr"
			var subsonicPsw = "subsonic_password";
			var player;
			var position;
			var maxBitRate = 1000;
			var timeOffset = 0;
		</script>

	</head>

	<body onload="init();">
		<div>

			<div id="placeholder1"><span class="warning"><a href="http://www.adobe.com/go/
getflashplayer">Obtenir Flash player</a></span></div>
		</div>
	</body>
</html>

Pour le reste je vous laisse télécharger ce fichier zip qui contient tout les éléments nécessaires à la lecture de la vidéo. Pour cela rendez-vous ici: subsonic_api_demo.

Référez-vous à la documentation de l’api Subsonic pour récupérer l’id de la vidéo et sa longueur.

Dernière info sur les méthodes changeTimeOffset() et changeBitrate() présentes dans le fichier subsonic.js: elles permettent respectivement de changer la position dans la vidéo et de changer la qualité de celle-ci. Elles sont donc très utiles 😉

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *