我正在尝试开发一个Faye服务器端客户端,以便根据需要自动运行。在Faye的官方网站上,我只找到有关服务器端客户端的文档,没有关于如何运行它的信息。 请告诉我怎么做 感谢
答案 0 :(得分:2)
通过Google解决了这个问题。您应该只使用以下代码运行客户端:
var faye = require('faye'),
client = new faye.Client('http://example.com/faye');
client.subscribe('/some/channel', function(message) {
// process message
});
如果您仍然遇到问题,请访问http://groups.google.com/group/faye-users
上的邮件列表答案 1 :(得分:2)
文档中有一个关键缺失部分。您似乎需要致电client.connect()
才能接收活动。
这对我有用:
var faye = require('faye');
var client = new faye.Client('http://localhost:8000/faye');
//This was missing from the documentation
client.connect();
var subscription = client.subscribe('/foo', function(message){
console.log("Event Received");
console.log(message);
})
//This is optional
subscription.then(function() {
console.log('Subscription is now active!');
});
var publication = client.publish('/foo', {text: "Hello World!"});
publication.then(function() {
console.log('Message received by server!');
}, function(error) {
console.log('There was a problem: ' + error.message);
});
答案 2 :(得分:0)
创建.rb文件并填写以下代码
require 'rubygems'
require 'faye'
cliv=Faye::RackAdapter.new(
:mount => '/cliv',
:timeout => 25
)
cliv.listen(3000)
转到控制台并输入
ruby your_file.rb
完成后。使用html创建一个js如下:
<script type="text/javascript" src="http://localhost:3000/faye.js"></script>
<script src='https://ajax.googleapis.com/ajax/libs/jquery/1.6.3/jquery.min.js'></script>
<script>
$("document").ready(function(){
faye = new Faye.Client('http://localhost:3000/faye');
faye.connect();
subscribeObj = faye.subscribe("/hi", function(message) {
$("#response").append(message.text);
$("#content").val("");
});
$("#say").click(function(){
content=$("#content").val();
faye.publish("/hi", {text: content});
});
});
</script>
<div id='response'></div>
<br/>
<input type='text' id='content' />
<div style='cursor:pointer;' id='say'> Say Something </div>
我想你准备好了。 :)