用nodejs获取evernote的提醒

时间:2018-01-17 14:23:18

标签: javascript node.js evernote

我想使用javascript获取evernote的提醒。正在搜索和asking,我得到了以下代码:

var token = 'yourToken':
var Evernote = require('evernote');

const nFilter = new Evernote.NoteStore.NoteFilter({
  words: "reminderOrder:*",
  ascending: true,
});

const rSpec = {};
rSpec.includeTitle = true;

var client = new Evernote.Client({token: token, sandbox: false});
var noteStore = client.getNoteStore();

noteStore.findNotesMetadata(nFilter, 0, 50, rSpec, function(notesMetadataList) {
  console.log("Found " + notesMetadataList.notes.length + " notes with `reminderOrder` set.");
  console.log();
  console.log("Here are their titles: ");

  for (var i in notesMetadataList.notes) {
    console.log("\t" + notesMetadataList.notes[i].title);
  }
});

一切顺利,直到最后一部分:noteStore.findNotesMetadata(...。我收到了这个错误:

(node:1) UnhandledPromiseRejectionWarning: Unhandled promise rejection (rejection id: 1): #<ThriftException>
(node:1) [DEP0018] DeprecationWarning: Unhandled promise rejections are deprecated. In the future, promise rejections that are not handled will terminate the Node.js process with a non-zero exit code.

这是我的第一个nodejs代码,所以我不知道我做错了什么......

1 个答案:

答案 0 :(得分:1)

我不确定您使用的Evernote是什么版本,但最新版本使用的是promises,您应该使用这样的函数:

noteStore.findNotesMetadata(nFilter, 0, 50, rSpec).then(function(notesMetadataList) {
    console.log("Found " + notesMetadataList.notes.length + " notes with `reminderOrder` set.");
    console.log();
    console.log("Here are their titles: ");

    for (var i in notesMetadataList.notes) {
      console.log("\t" + notesMetadataList.notes[i].title);
    }
  }).catch(function(err){
      console.log('Error:',err);
  });

你链接的要点是2岁,很可能使用了回调。