【发布时间】:2011-04-05 13:28:46
【问题描述】:
我了解Javascript examples 背后的基础知识,但我很难理解这将如何与 WCF 一起使用。我的目标是启用 COMET(HTTP 推送)样式访问我的数据,但我不确定 Rx 是否是正确的技术。
如何在 WCF 中使用 Javascript Rx 扩展?
【问题讨论】:
标签: javascript wcf comet system.reactive reverse-ajax
我了解Javascript examples 背后的基础知识,但我很难理解这将如何与 WCF 一起使用。我的目标是启用 COMET(HTTP 推送)样式访问我的数据,但我不确定 Rx 是否是正确的技术。
如何在 WCF 中使用 Javascript Rx 扩展?
【问题讨论】:
标签: javascript wcf comet system.reactive reverse-ajax
WCF 是否支持 HTTP 推送?将任意回调转换为 Rx Observable 相当容易,我是这样做的(在 Coffeescript 中):
this.createRxCallback = () ->
subj = new Rx.Subject()
subj.callback = (params...) -> subj.OnNext(params)
return subj
然后你可以使用任何需要回调的函数,比如 Socket.io 中的这个例子:
socket = new io.Socket {node_server_url}
socket.connect()
myCoolObservable = createRxCallback()
socket.on 'message', myCoolObservable.callback
myCoolObservable.Subscribe (x) ->
console.log x
或者一个简单的例子:
clickObservable = createRxCallback()
document.addEventListener 'myButton', clickObservable.callback, true
clickObservable.Subscribe (x) ->
console.log "Button was clicked!"
【讨论】: