From 747b91da5fb0f7ef4dd4acc6ec8ee68bdf140f76 Mon Sep 17 00:00:00 2001 From: Lorenzo Blasa Date: Thu, 16 Jun 2022 10:45:08 -0700 Subject: [PATCH] Add file:// as possible origin Summary: For Flipper Desktop, Electron based, the origin maybe file:// as shown in tests: ``` Refused socket connection from cross domain request, origin: file://, host: localhost:52342. Expected origins: http://localhost:52342 or http://[::1]:52342 or http://::1:52342 or http://localhost:3000. Expected hosts: localhost:52342 or [::1]:52342 or ::1:52342 or localhost:3000 ``` This change effectively adds `file://` as a valid origin. Reviewed By: passy Differential Revision: D37212809 fbshipit-source-id: 311a93bb8872587d15c6be4329238af6b0f6988d --- desktop/flipper-server-core/src/server/startServer.tsx | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/desktop/flipper-server-core/src/server/startServer.tsx b/desktop/flipper-server-core/src/server/startServer.tsx index 3087e52d2..35343f565 100644 --- a/desktop/flipper-server-core/src/server/startServer.tsx +++ b/desktop/flipper-server-core/src/server/startServer.tsx @@ -160,7 +160,9 @@ function addWebsocket(server: http.Server, config: Config) { localhostIPV6NoBrackets, localhostIPV4Electron, ]; - const possibleOrigins = possibleHosts.map((host) => `http://${host}`); + const possibleOrigins = possibleHosts + .map((host) => `http://${host}`) + .concat(['file://']); const verifyClient: VerifyClientCallbackSync = ({origin, req}) => { const noOriginHeader = origin === undefined;