diff --git a/DUnit/Win32/Debug/html/wstest.html b/DUnit/Win32/Debug/html/wstest.html new file mode 100644 index 0000000..c9548e9 --- /dev/null +++ b/DUnit/Win32/Debug/html/wstest.html @@ -0,0 +1,63 @@ + + +WebSocket Test + + +WebSocket Test + +
+
+ + + \ No newline at end of file diff --git a/DUnit/mtTestWebSockets.pas b/DUnit/mtTestWebSockets.pas index d315020..44ffaf5 100644 --- a/DUnit/mtTestWebSockets.pas +++ b/DUnit/mtTestWebSockets.pas @@ -99,9 +99,16 @@ end; procedure TTestWebSockets.HandleHTTPServerCommandGet(AContext: TIdContext; ARequestInfo: TIdHTTPRequestInfo; AResponseInfo: TIdHTTPResponseInfo); +var sfile: string; begin if ARequestInfo.Document = '/index.html' then - AResponseInfo.ContentText := 'dummy index.html'; + AResponseInfo.ContentText := 'dummy index.html' + else + begin + sfile := ExtractFilePath(Application.ExeName) + ARequestInfo.Document; + if FileExists(sfile) then + AResponseInfo.ContentStream := TFileStream.Create(sfile, fmOpenRead); + end; end; procedure TTestWebSockets.StartServer; diff --git a/IdServerWebsocketHandling.pas b/IdServerWebsocketHandling.pas index 6ed78a9..5efeae6 100644 --- a/IdServerWebsocketHandling.pas +++ b/IdServerWebsocketHandling.pas @@ -180,7 +180,7 @@ begin Sec-WebSocket-Version: 13 *) //Connection: Upgrade - if not SameText('Upgrade', ARequestInfo.Connection) then + if not ContainsText(ARequestInfo.Connection, 'Upgrade') then //Firefox uses "keep-alive, Upgrade" begin //initiele ondersteuning voor socket.io if SameText(ARequestInfo.document , '/socket.io/1/') then