【发布时间】:2017-09-22 12:21:00
【问题描述】:
几个月前我问了几个关于这个的问题,最近我又回到了那个脚本。我想出了一些办法,一位朋友帮助编写了脚本,但现在我遇到了另一个问题。
这是我现在的脚本:
var j = schedule.scheduleJob('*/5 * * * * *', function(){
var steamids = [];
con.query("SELECT * FROM counterStrikeGlobalOffensive", function (err, rows) {
for (var i = 0; i < rows.length; i++) {
steamids.push(rows[i].steam64ID);
}
//const steamIDs = ["2342342341234123", "23423412341234", "2342314123423"]; // Steam IDs to check
eachSeries(steamids, (steamID, callback) => {
CSGOCli.playerProfileRequest(CSGOCli.ToAccountID(steamID));
CSGOCli.on("playerProfile", function(profile) {
console.log(JSON.stringify(profile, null, 2));
callback();
});
}, (err) => {
// error thrown = set, else we're done
});
});
});
当我使用常量 steamID 时,它运行良好,但是当我使用 steamids 时,它给了我一个错误。(我会解释)...
当我这样做时,console.log(steamids);它返回给我这个
[ '76561198152643711', '76561198213530057' ]
steamID 是
const steamIDs = ["2342342341234123", "23423412341234", "2342314123423"];
所以它与常量 SteamID 几乎相同,但常量在数字周围有“”,这不应该是它不起作用的原因,但也许我错了?
另外,我有回调(),但我怎样才能让它停止给我一个错误 错误:回调已被调用。
请询问任何其他信息:)
【问题讨论】:
-
我的建议是放弃 async 模块并使用原生或 Bluebird
Promises和Async-Await -
是的,这太复杂了,因为我使用 node js 大约 2 天,仅此而已。
标签: node.js