0
我有一個問題與SSE通過HTTPS,讓我說清楚,我有一個Nginx服務器,聽取https,並在後面的Rails美洲獅,所以我有這個在JS coffescript):SSE通過https不工作
initStream =() ->
rechargePayment.source = new
EventSource('/proggress/stream')
,並在軌道控制器我有:
def stream
response.headers['Content-Type'] = 'text/event-stream'
redis = Redis.new
redis.psubscribe(['proggress.refresh', 'heartbeat']) do |on|
on.pmessage do |_pattern, event, data|
response.stream.write("event: #{event}\n")
response.stream.write("data: #{data}\n\n")
end
end
rescue IOError
logger.info 'Stream stoped'
ensure
logger.info 'Stopping Stream Thread'
redis.quit
response.stream.close
end
當我嘗試這通過HTTPS,它什麼也不做,在日誌中我只看到錯誤:「流關閉」,但如果我嘗試通過HTTP它完美的作品。
編輯:我看到這個: 「EventSource接口用於接收服務器發送的事件,它通過HTTP連接到服務器,並接收文本/事件流格式的事件,而不關閉連接。
來源:https://developer.mozilla.org/en-US/docs/Web/API/EventSource
那麼,這是否意味着它只能在HTTP?