@@ -115,7 +115,7 @@ public override async Task SendMessageAsync(
115115        if  ( message  is  JsonRpcRequest  request  &&  request . Method  ==  RequestMethods . Initialize ) 
116116        { 
117117            // If the response is not a JSON-RPC response, it is an SSE message 
118-             if  ( responseContent . Equals ( "accepted" ,  StringComparison . OrdinalIgnoreCase ) ) 
118+             if  ( string . IsNullOrEmpty ( responseContent )   ||   responseContent . Equals ( "accepted" ,  StringComparison . OrdinalIgnoreCase ) ) 
119119            { 
120120                _logger . SSETransportPostAccepted ( _endpointName ,  messageId ) ; 
121121                // The response will arrive as an SSE message 
@@ -133,7 +133,7 @@ public override async Task SendMessageAsync(
133133        } 
134134
135135        // Otherwise, check if the response was accepted (the response will come as an SSE message) 
136-         if  ( responseContent . Equals ( "accepted" ,  StringComparison . OrdinalIgnoreCase ) ) 
136+         if  ( string . IsNullOrEmpty ( responseContent )   ||   responseContent . Equals ( "accepted" ,  StringComparison . OrdinalIgnoreCase ) ) 
137137        { 
138138            _logger . SSETransportPostAccepted ( _endpointName ,  messageId ) ; 
139139        } 
@@ -294,13 +294,11 @@ private void HandleEndpointEvent(string data)
294294            else 
295295            { 
296296                // If the endpoint is a relative URI, we need to combine it with the relative path of the SSE endpoint 
297-                 var  hostUrl  =  _sseEndpoint . AbsoluteUri ; 
298-                 if  ( hostUrl . EndsWith ( "/sse" ,  StringComparison . Ordinal ) ) 
299-                     hostUrl  =  hostUrl [ ..^ 4 ] ; 
297+                 var  baseUriBuilder  =  new  UriBuilder ( _sseEndpoint ) ; 
300298
301-                 var  endpointUri  =  $ "{ hostUrl . TrimEnd ( '/' ) } /{ data . TrimStart ( '/' ) } "; 
302299
303-                 _messageEndpoint  =  new  Uri ( endpointUri ) ; 
300+                 // Instead of manually concatenating strings, use the Uri class's composition capabilities 
301+                 _messageEndpoint  =  new  Uri ( baseUriBuilder . Uri ,  data ) ; 
304302            } 
305303
306304            // Set connected state 
0 commit comments