gpt4 book ai didi

ruby-on-rails - rails 4 直播不适用于 Puma

转载 作者:数据小太阳 更新时间:2023-10-29 07:37:52 25 4
gpt4 key购买 nike

我正在尝试使用 Puma 服务器在 Rails ActiveController::Live 上实现一个小测试。我通过rails s puma 启动了Puma server,并使用curl localhost:3000/messages/events 进行测试。但是在一次返回数据之前有一个很长的停顿,这与使用 WEBrick 相同。那么为什么 Puma 服务器不直播结果呢?

class MessagesController < ApplicationController
include ActionController::Live

def index
@messages = Message.all
end

def create
@message = Message.create!(params[:message].permit(:content, :name))
end

def events
3.times do |n|
response.stream.write "#{n}...\n\n"
sleep 2
end
ensure
response.stream.close
end
end

最佳答案

你需要设置响应头

def events
response.headers['Content-Type'] = 'text/event-stream'
3.times do |n|
response.stream.write "#{n}...\n\n"
sleep 2
end
ensure
response.stream.close
end

关于ruby-on-rails - rails 4 直播不适用于 Puma,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22647058/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com