节点获取功能不返回任何内容

时间:2019-08-27 10:58:27

标签: node.js websocket ftp

我有一段使用jsftp来获取文件内容的代码。它有时可以工作并进入get函数,有时由于我不知道的原因而被跳过。我是Node的新手(几乎在编程中),所以它可能有些愚蠢,但是我无法说出为什么有时它会起作用而有时会返回未定义状态。

if (newestName !== "") {
      var filePath = path + "/" + newestName;
      var str = ""; 
      jsFTP.get(filePath, (err, socket) => {
        if (err) {
          console.log("error");
          return;
        }

        socket.on("data", d => {
          str += d.toString();
          if (str.length > 0) {
            debugger;
            update(str);
            console.log("Sending: " + str);
          }
        });

        socket.on("close", err => {
          if (err) {
            console.error("There was an error retrieving the file.");
          } else {
            write();
          }
        });
        socket.resume();
      });

更新: 如果每秒执行一次代码,则效果很好

0 个答案:

没有答案