From 895d2447fdf9a6bb081f7ea153be64176af44ea7 Mon Sep 17 00:00:00 2001 From: Roy Hyunjin Han Date: Tue, 18 Nov 2014 10:45:22 -0500 Subject: [PATCH] Experiment with socket.io 1.2.0 --- experiments/client1.py | 41 +++++++++++++++++++++++++++++---- experiments/interpretation.log | Bin 3414 -> 3436 bytes 2 files changed, 37 insertions(+), 4 deletions(-) diff --git a/experiments/client1.py b/experiments/client1.py index c2c6290..e88abf8 100644 --- a/experiments/client1.py +++ b/experiments/client1.py @@ -1,4 +1,6 @@ +import json import requests +import time def get_packets(content): @@ -8,7 +10,9 @@ def get_packets(content): while index < content_length: index, packet_length = read_packet_length(content, index) index, packet = read_packet(content, index, packet_length) - packets.append((packet[0], packet[1:])) + packet_type = int(packet[0]) + packet_payload = packet[1:] + packets.append((packet_type, packet_payload)) return packets @@ -30,23 +34,52 @@ def read_packet(content, index, packet_length): return index + packet_length, packet +request_counter = 0 + + +def get_timestamp(): + global request_counter + timestamp = '%s-%s' % (int(time.time() * 1000), request_counter) + request_counter += 1 + return timestamp + + base_url = 'http://localhost:9000' session = requests.Session() # Establish engine.io connection -response = session.get( - base_url + '/socket.io/?EIO=3&transport=polling&t=1416156610842-0') +url = base_url + '/socket.io/' +response = session.get(url, params={ + 'EIO': 3, + 'transport': 'polling', + 't': get_timestamp(), +}) +print response.url + + packets = get_packets(response.content) for packet_type, packet in packets: print packet_type, packet packet_type, packet = packets[0] -import json packet_json = json.loads(packet) print packet_json print packet_json['pingInterval'] print packet_json['pingTimeout'] print packet_json['sid'] +assert packet_type == 0 + + # Establish socket.io connection +session.get + + +# [REQUEST] /socket.io/?EIO=3&transport=polling&t=1416156610865-1&sid=OXdRaq1cUWs5v3TVAAAF # Receive socket.io event + + # Send socket.io event +# [REQUEST] /socket.io/?EIO=3&transport=polling&t=1416156610887-2&sid=OXdRaq1cUWs5v3TVAAAF + + # Send socket.io ping +# [REQUEST] /socket.io/?EIO=3&transport=polling&t=1416156635868-4&sid=OXdRaq1cUWs5v3TVAAAF # Receive socket.io pong diff --git a/experiments/interpretation.log b/experiments/interpretation.log index 2afb8e24769945acbdaacf98e77d1814320474d3..ea51ac8d4150cd24d3bb94a58513ace66b5687e6 100644 GIT binary patch delta 67 zcmca6^+t+2I>p~`GD0}mLraWe5y#W8s-fXX7qNbCxI4^?* It+}L`0ma%A>Hq)$ delta 50 zcmaDObxn#bI>5~j()Tn3w;FcmU`8C`5U!6K8(Ij?UH=8|Lv0K2{r A-T(jq