我正在开展一个项目,我希望关注两个独立的Twitter帐户,以及每个帐户推文时调用的特定功能。我正在使用Twitter API,Node.js和一个名为Twit的NPM模块。
当一个帐户发送推文时,我的工作没有问题,但两个都没有:
我相信我的问题可能就在这里:
warning
如果我按照设置只设置一个用户它可以正常工作,但有两个它只能用于一个。此外,它只适用于列表中的第二个,因此如果它:var stream = T.stream('statuses/filter', { follow: ( userID1 , userID2 ) });
只有userID2可以工作。如果其userID1, user ID2
仅用户名ID1将起作用。
这里的完整代码/逻辑:
userID2, userID1
任何建议都非常感谢!
答案 0 :(得分:0)
通过为第二个用户帐户建立单独的流,它似乎有效:
//SetUp info
var Twit = require('twit'); // NPM twit package
var config = require('./config'); // the config file to allow me access Auth Keys etc
var T = new Twit(config);//run config file
//end of setup
var userID1 = 'XXXXXXXXXXX1'; //TwitterAccount1
//these two lines set up the twitter API
var stream = T.stream('statuses/filter', { follow: ( userID1 ) }); // here seems to be my issue?
stream.on('tweet', function (tweet) {
if (tweet.user.id == userID1 ) { // is tweet.user.id matches UserID1
DoStuff_1(); //call this function
}
});
var userID2 = 'XXXXXXXXXXX2'; //TwitterAccount2
//Separate stream for UserID2
var stream = T.stream('statuses/filter', { follow: ( userID2 ) }); // here seems to be my issue?
stream.on('tweet', function (tweet) {
if (tweet.user.id == userID2 ) { // if tweet.user.id matches UserID2
DoStuff_2(); // call this function instead
}
});
//Function for userID1
function DoStuff_1(){
console.log("Doing Stuff 1");
}
//Function for userID2
function DoStuff_2(){
console.log("Doing Stuff 2");
}
答案 1 :(得分:0)
您可以通过某些流来完成所有操作;只需使用用户ID组成一个数组,然后将它们加入以下参数中即可:
allFieldRequired(ctrlName: string): ValidatorFn {
return (ctrl: AbstractControl) => {
if (!ctrl.parent || !Object.values(ctrl.parent.value).join('')) {
return null;
}
return CustomValidators.required()(ctrl)
}
}