【发布时间】:2016-03-17 16:30:14
【问题描述】:
我现在正在发现 RxJS,我的第一次尝试是尝试对 API 请求进行速率限制。
不知怎的,我遗漏了一些东西,输出只是“未定义”。
我做错了什么?
const Rx = require('rx');
const request = require('request');
function f() {
return Rx.Observable.from(arguments);
}
function expand(condensedId) {
console.log('requesting', condensedId)
return f(request(INDEX_URL + '/' + condensedId));
}
const INDEX_URL = 'http://jsonplaceholder.typicode.com/posts';
var source = f([1,2,3,4,5,6,7])
.windowWithTimeOrCount(5000, 2)//rate limitation, 2 every 5 seconds
.flatMap(condensed => expand(condensed))
.map(entry => entry.title);
var subscription = source.subscribe(
function (x) {
console.log('title: %s', x);
},
function (err) {
console.log('Error: %s', err);
},
function () {
console.log('Completed');
});
【问题讨论】:
标签: javascript reactive-programming rxjs