您的位置:首页 > 其它

欢迎使用CSDN-markdown编辑器

2015-04-28 12:07 204 查看
印象笔记NodeJS SDK中base.js的代码,值得玩味:

[code]var vm = require('vm');
var fs = require('fs');
var path = require('path');

var evernote = {
  console: console,
  require: require,
  Buffer: Buffer,
  ArrayBuffer: ArrayBuffer,
  DataView: DataView,
  Uint8Array: Uint8Array,
  Int8Array: Int8Array,
};

var filenames = ['./evernote-sdk-js/thrift/lib/thrift.js',
    './evernote-sdk-js/thrift/lib/thrift-binary.js',
    './evernote-sdk-js/generated/Types_types.js',
    './evernote-sdk-js/generated/Limits_types.js',
    './evernote-sdk-js/generated/Errors_types.js',
    './evernote-sdk-js/generated/NoteStore_types.js',
    './evernote-sdk-js/generated/UserStore_types.js',
    './evernote-sdk-js/generated/UserStore.js',
    './evernote-sdk-js/generated/NoteStore.js'
    ];
for (var i = 0; i < filenames.length; i++) {
  var filename = path.resolve(path.dirname(module.filename), filenames[i]);
  var filedata = fs.readFileSync(filename);
  vm.runInNewContext(filedata, evernote);
}

evernote.Thrift.NodeBinaryHttpTransport = require(
  './evernote-sdk-js/thrift/lib/node/thrift-node-binary.js'
).NodeBinaryHttpTransport;

exports.Evernote = evernote;
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: