@aikidosec/broker-client 1.0.8 → 1.0.9
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/app/client.js
CHANGED
|
@@ -253,9 +253,20 @@ const socket = io(SERVER_URL, {
|
|
|
253
253
|
pingTimeout: 60000, // 60s (default 20s) - time to wait for pong before considering connection dead
|
|
254
254
|
});
|
|
255
255
|
|
|
256
|
-
// Socket.IO event handlers
|
|
256
|
+
// Socket.IO event handlers - listen for engine open to catch transport before upgrade
|
|
257
|
+
socket.io.on('open', () => {
|
|
258
|
+
const transport = socket.io?.engine?.transport?.name;
|
|
259
|
+
log.info(`🔌 Engine opened (initial transport: ${transport})`);
|
|
260
|
+
|
|
261
|
+
// Log transport upgrades (e.g., polling -> websocket)
|
|
262
|
+
socket.io.engine.on('upgrade', (newTransport) => {
|
|
263
|
+
log.info(`🔄 Transport upgraded to: ${newTransport?.name}`);
|
|
264
|
+
});
|
|
265
|
+
});
|
|
266
|
+
|
|
257
267
|
socket.on('connect', async () => {
|
|
258
|
-
|
|
268
|
+
const transport = socket.io?.engine?.transport?.name;
|
|
269
|
+
log.info(`✓ Connected to broker server (transport: ${transport})`);
|
|
259
270
|
|
|
260
271
|
const clientId = getClientId();
|
|
261
272
|
|
|
@@ -411,17 +422,16 @@ socket.on('forward_request', async (data, callback) => {
|
|
|
411
422
|
* @param {string} requestId - Request ID for tracking
|
|
412
423
|
* @param {number} statusCode - HTTP status code
|
|
413
424
|
* @param {object} headers - Response headers
|
|
414
|
-
* @param {Buffer|null} responseData - Raw response data (
|
|
425
|
+
* @param {Buffer|null} responseData - Raw response data (sent as binary)
|
|
415
426
|
* @param {function} callback - Socket.IO callback
|
|
416
427
|
*/
|
|
417
428
|
function sendDirectResponse(requestId, statusCode, headers, responseData, callback) {
|
|
418
|
-
const responseBody = responseData ? responseData.toString('base64') : null;
|
|
419
429
|
callback({
|
|
420
430
|
request_id: requestId,
|
|
421
431
|
status_code: statusCode,
|
|
422
432
|
headers: headers,
|
|
423
|
-
body:
|
|
424
|
-
version:
|
|
433
|
+
body: responseData || null, // Send raw Buffer - Socket.IO handles binary natively
|
|
434
|
+
version: 3
|
|
425
435
|
});
|
|
426
436
|
}
|
|
427
437
|
|
|
@@ -64,7 +64,7 @@ export async function handleGetNextChunk(data, callback) {
|
|
|
64
64
|
|
|
65
65
|
callback({
|
|
66
66
|
request_id: requestId,
|
|
67
|
-
data: chunkData.
|
|
67
|
+
data: chunkData, // Send raw Buffer - Socket.IO handles binary natively
|
|
68
68
|
complete: isComplete,
|
|
69
69
|
chunk_index: state.chunkIndex
|
|
70
70
|
});
|
package/package.json
CHANGED