faye 如何push json数据到客户端?

前一篇文章,简单的介绍了faye push js到web端执行的情况,但是大部分的场景,faye都是push json 数据到client比较合适。比如与Android, IPhone等手机客户端通信,JSON数据能合适更多情况。

如下,是我写的一个Faye Push JSON数据到客户端的类

##
#提供faye server的服务,发送消息, 生成频道
#

module FayeServer

  class Common
    def self.faye_url
      "http://#{FayeConfig["server"]}:#{FayeConfig["port"]}/#{FayeConfig["name"]}"
    end
  end

  class Push
    ##
    #负责发送json数据到服务器, ext是增加额外的参数,比如认证token
    #
    def self.broadcast(channel, data)
      faye_url = FayeServer::Common.faye_url
      #message = {:channel => channel, :data => data, :ext => {:auth_token => FAYE_TOKEN} }
      message = {:channel => channel, :data => data }
      uri = URI.parse(faye_url)
      Net::HTTP.post_form(uri, :message => message.to_json)
    end
  end



end

faye的配置参数文件  faye_config.yml
defaults: &defaults
  server: 192.168.1.126
  port: 9292
  name: diaodu
development:
  <<: *defaults
production:
  <<: *defaults
test:
  <<: *defaults

initializers/init.rb
#faye
FayeConfig = YAML.load_file(File.join(Rails.root, "config", "faye_config.yml"))[Rails.env]
FAYE_TOKEN = "fwef0afn3pjrp32"


使用:
FayeServer::Push.broadcast(channel, data)



  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值