ation[0].split('\n').map(line => line.trimEnd());
            resolve(result);
          },
          error: function (error) {
            console.error(error);
            resolve([]);
          }
        });
      });
    },

    buildSign(query, curtime) {
      const str = this.youdao.appKey + this.truncate(query) + this.youdao.salt + curtime + this.youdao.appSecret;
      return CryptoJS.SHA256(str).toString(CryptoJS.enc.Hex);
    },

    truncate(q) {
      const len = q.length;
      if (len <= 20) 