list() FTW
(oui, 1 mois plus tard :d)
« La structure de toute “chose”, qu'il s'agisse d'un langage, d'une maison, d'une machine etc., se résume à des relations. » — Alfred Korzybski
Vous n'êtes pas logué. Veuillez vous loguer ou vous enregistrer.
Hoa Forum » Posts par Savageman
list() FTW
(oui, 1 mois plus tard :d)
Pour le "Ici" j'était bien entendu tombé sur la page. Mais un paragraphe de 5 lignes et un autre de 3 lignes ça fait un peu juste pour de la doc... (je parle du Manuel de référence et de la Documentation API).
C'est vraiment pas disponible quelque part en ligne sans devoir faire 20 pirouettes en ligne de commande ? C'était mieux avant !
Je n'arrive pas la retrouver. C'est quand même très problématique...
Alors tant que j'y suis j'ai peut-être autre chose. Qui est certes un cas limite mais c'est pas une bonne raison pour l'ignorer et il peut p'tet bien arriver quand même (d'ailleurs je suis tombé dessus d'où le fait que j'y pense).
Genre quand le socket est accepté, il est dans la liste des nodes. On peut donc lui envoyer un message. Sauf qu'il n'a pas encore forcément fait son handshake. Du coup patatrac : au premier message envoyé le client refuse la connexion car il n'a pas obtenu la bonne réponse au challenge.
Qu'en penses-tu ?
Sinon rien à voir mais j'ai regardé la denrière version de ton code et tu passes par des opcode. C'est uniquement une gestion interne ou bien c'est décrit quelque part dans le protocole Websocket ? Le OPCODE_CONTINUATION_FRAME permet d'envoyer plusieurs messages en un coup ? Un petit eclaircissement sur le pourquoi du comment serait pas mal.
Merci tout plein !
Mon PC est 64 bits, mais mon install de Apache/PHP doit être en 32 je pense.
Pas de souci pour l'ajout aux contributeurs. ![]()
Ça marche à 100% (du moins sur les dizaines d'essais que j'ai fait).
La division renvoie parfois du nombre négatif, parfois même à virgule (même avec le cast en INT
) mais ça ne pose ni problème à Chrome ni à Opera.
J'ai Chrome 13 et Opera 11.50 beta.
Patch qui fonctionne chez moi :
$key3 = $x[count($x) - 1];
$keynumb1 = preg_replace('#[^0-9]#', '', $key1);
$keynumb2 = preg_replace('#[^0-9]#', '', $key2);
$spaces1 = substr_count($key1, ' ');
$spaces2 = substr_count($key2, ' ');
$part1 = pack('N', bcdiv($keynumb1, $spaces1, 0));
$part2 = pack('N', bcdiv($keynumb2, $spaces2, 0));On enlève les cast en (int) et on divise avec quelque chose qui sait gérer les grands nombres (et en plus dispo de base en PHP sans rien installer, classe !).
Yeay.
Alors ça marche à 100% avec Firefox.
Et ça fail à pas mal de % avec Chrome et Opera.
Tu as de la chance, j'ai enquêté pour toi !
Chrome et Opera balancent des clé plus longues, ou avec plus de chiffres.
Du coup ça fail ici :
$keynumb1 = (int) preg_replace('#[^0-9]#', '', $key1);
$keynumb2 = (int) preg_replace('#[^0-9]#', '', $key2);Un clé (voire même les deux) vaut alors "2147483647", ce qui correspond à mon PHP_INT_MAX (PHP 5.3.5 Windows).
Du coup le challenge n'est pas validé... Logique !
Je teste sur un serveur à moi (plus ou moins copié sur Hoa) et soit Opera, soit Chrome soit Firefox 4. Souvent, je dois essayer plusieurs fois avant de me connecter avec succès. Je fais plus de tests ce soir et je t'en dis plus. ![]()
Merci beaucoup pour ce point en tout cas !
Coucou !
Oui, c'est encore moi, encore à propos des WebSocket. Chez moi la connexion est très aléatoire tout de même (souvent, ça ne marche pas en fait). Je soupçonne le handshake (bizarrement).
Voici les pistes que j'ai (pas encore testées, ce sont des pistes) :
- 3 \r\n au lieu de 2 avant la $response
- Inclusion du protocole quand il existe (genre "WebSocket-Protocol: sample" par exemple)
- Vérifier qu'il n'y ai pas de caractère NUL \0 (ou \255 ?) dans la réponse (problème avec le protocole HTTP)
D'autre part, tu m'avais dit que le protocole changeait (à cause de la faille de sécurité). Qu'en est-il de l'avancement : ils sont enfin décidés pour autre chose ?
Merci, @+
Posts trouvés [ 1 to 10 of 41 ]
Hoa Forum » Posts par Savageman
Powered by PunBB
Currently used extensions: pun_repository, pun_bbcode, pun_pm, pun_quote, pun_antispam. Copyright © 2008 PunBB
[ Généré en 0.149 secondes, 22 requêtes exécutées ]