我需要你的帮助来处理一些错误。我正在使用外部库,但不知道错误是怎么回事。 这是我的代码:
//file name = playground.js
var ccxt = require("ccxt");
ccxt.exchanges.map(r => {
let exchange = new ccxt[r]();
let ticks = exchange
.fetchTickers()
.then(res => {
console.log(res);
})
.catch(e => {
console.log(e);
});
});
要正确执行它,您需要通过 npm 安装外部库:ccxt
:npm i ccxt --save
我收到以下错误:
.../node_modules/ccxt/js/base/Exchange.js:407
throw new NotSupported (this.id + ' fetchTickers not supported yet')
^
Error: _1broker fetchTickers not supported yet
at _1broker.fetchTickers (.../node_modules/ccxt/js/base/Exchange.js:407:15)
at ccxt.exchanges.map.r (.../playground.js:41:6)
at Array.map (<anonymous>)
at Object.<anonymous> (.../playground.js:38:16)
at Module._compile (module.js:635:30)
at Object.Module._extensions..js (module.js:646:10)
at Module.load (module.js:554:32)
at tryModuleLoad (module.js:497:12)
at Function.Module._load (module.js:489:3)
at Function.Module.runMain (module.js:676:10)
基本上,图书馆能帮我做的是:
- 自动请求不同的服务器
- 组织穿制服的元素的 react
- 处理服务器返回的大部分错误
在我的示例中,返回的错误与服务器不支持我正在使用的功能这一事实有关。用更简单的话来说: 我提出了一个服务器 1 可能能够处理但服务器 2 还不能响应的请求。
代码中的 ccxt.exhanges
返回库正在处理的不同服务器的数组。
问题不是我得到错误那么多...我可以接受没有从每台服务器返回信息,但是我的函数一旦遇到错误就会停止。 .map
循环并没有一直走到最后...
ccxt publishes some information on Error Handling但我不确定我能用它做什么(抱歉,这里是菜鸟)。
我希望我的问题足够清楚并且还没有人问过!
预先感谢您的帮助!
最佳答案
这是一个稍微好一点的版本:
var ccxt = require("ccxt");
ccxt.exchanges.forEach(r => {
let exchange = new ccxt[r]();
if (exchange.hasFetchTickers) { // ← the most significant line
let ticks = exchange
.fetchTickers()
.then(res => {
console.log(res);
})
.catch(e => {
console.log(e);
});
}
});
关于javascript - 为什么我的函数结束(使用外部库),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47333043/