Skip to content

Commit 857e9b3

Browse files
committed
fix: don't use Maglev to process websocket related requests
1 parent fcb4f82 commit 857e9b3

File tree

1 file changed

+5
-1
lines changed

1 file changed

+5
-1
lines changed

lib/maglev/preview_constraint.rb

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@ def initialize(preview_host: nil)
1313
end
1414

1515
def matches?(request)
16-
(accepted_format?(request) || crawler?(request)) && match_host?(request)
16+
!websocket?(request) && (accepted_format?(request) || crawler?(request)) && match_host?(request)
1717
end
1818

1919
protected
@@ -32,6 +32,10 @@ def crawler?(request)
3232
request.format.symbol.nil? && CRAWLER_USER_AGENTS.match?(request.user_agent)
3333
end
3434

35+
def websocket?(request)
36+
request.headers['Upgrade'] == 'websocket'
37+
end
38+
3539
def match_host?(request)
3640
!preview_host || preview_host == request.host
3741
end

0 commit comments

Comments
 (0)