J'écris une application Flex à l'aide de requêtes REST et j'essaie d'éviter la mise en cache HTTP et de synchroniser le temps client/serveur. À cette fin, j'ai créé une propriété timestamp
en tant que tel:Les propriétés Flex se comportent étrangement lorsqu'elles sont utilisées dans HTTPService
// returns a timestamp corrected for server time
private function get timestamp() : Number
{
return new Date().getTime() + clientClockAdjustMsec;
}
(Le clientClockAdjustMsec
je l'ai déjà mis à l'aide mojo spéciale)
je tente également d'inclure l'horodatage dans ma chaîne de requête comme ceci: Mais ce que je vois dans les journaux d'accès est bizarre. C'est quelque chose comme ceci:
1.2.3.4 - - [06/Aug/2009:17:19:47 +0000] "GET /Service?ts=1249579062937 HTTP/1.1" 200 478
1.2.3.4 - - [06/Aug/2009:17:20:13 +0000] "GET /Service?ts=1249579062937 HTTP/1.1" 200 500
1.2.3.4 - - [06/Aug/2009:17:20:14 +0000] "GET /Service?ts=1249579062937 HTTP/1.1" 200 435
Voir comment les horodatages sont tous les mêmes? Si étrange. Je m'attendrais à ce qu'il évalue la propriété à chaque fois, comme c'est le cas pour les variables Bindable.
(En fait, je viens de vérifier à nouveau et il ne fait la même chose pour les variables Bindable. Mais pas avec tous les clients. Faites des versions de Flash ont des « problèmes »?)
Joel a raison. Parce que vous ne dites jamais à votre HTTPService que la valeur de 'timestamp' a changé, il ne sait pas mettre à jour les liaisons de données. – Dan
* TECHNICALLY * Ceci n'est pas une liaison de données car elle concerne la valeur de sortie d'une fonction et non une propriété. – cwallenpoole
J'ai mis à jour la réponse pour refléter votre élaboration Christopher. Je vous remercie de le faire remarquer. –