ruby-on-rails – Rails如何解析文本/事件流?

前端之家收集整理的这篇文章主要介绍了ruby-on-rails – Rails如何解析文本/事件流?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我有一个API网址,它是一个包含内容类型的数据流:text / event-stream.

怎么可能听流?喜欢划分每个事件打印数据?我试图使用ruby libary em-eventsource

我的test.rb文件

require "em-eventsource"
EM.run do
  source = EventMachine::EventSource.new("my_api_url_goes_here")
  source.message do |message|
    puts "new message #{message}"
  end
  source.start 
end

当我访问我的api url,我可以看到每秒更新的数据.但是当我在终端中运行ruby文件时,它不会打印任何数据/消息.

解决方法

设置一个计时器来检查source.ready_state,它似乎没有连接到api由于某些原因

编辑:似乎你的问题是在目前的eventmachine版本不支持的https’SNI中,所以连接事件源尝试连接到api机器上的默认虚拟主机,而不是api所在的虚拟主机,因此CONNECTING状态

尝试从主分支使用eventmachine,它已经声明支持SNI,这将在1.2.0中发布:

gem 'eventmachine',github:'eventmachine/eventmachine'
原文链接:https://www.f2er.com/ruby/274105.html

猜你在找的Ruby相关文章