cho*_*Bao 0 javascript httprequest reactive-programming node.js rxjs
Nodejs服务器端实现:如何使用https://www.npmjs.com/package/request与https://www.npmjs.com/package/rx一起向https://www.reddit.com/发出GET请求r/javascript.json?
目标:无论何时我正在使用的网站api url都有数据更改,我都会尝试实现持续流式处理.
遗憾的https://www.reddit.com/r/javascript.json是,更新后您将无法接收更新,因为他们无法将此信息推送到客户端.
像Github这样的服务会让你注册一个webhook可以将数据推送到服务器端点的服务.我不确定Reddit是否支持这一点.
作为替代解决方案,并在AkkarinZA在其答案中所说的基础上,您可以使用类似于以下内容的方式轮询json文档:
var fetchContent = function(url) {
return rx.Observable.create(function (observer) {
request(url, function (error, response, body) {
if (error) { observer.onError(); }
else { observer.onNext({response: response, body: body }); }
observer.onCompleted();
})
});
};
rx.Observable.interval(1000)
.map(function() { return 'https://www.reddit.com/r/javascript.json' })
.flatMap(fetchContent)
.map(/* do something */)
.subscribe();
Run Code Online (Sandbox Code Playgroud)
像这样的轮询不是一个好方法.
| 归档时间: |
|
| 查看次数: |
6799 次 |
| 最近记录: |