Интеграция API-оболочки Lob Node с MeteorJs - проблема с require('fs')
Я использую Meteor 1.13 (последняя версия), и они недавно добавили поддержку NPM. Поэтому я добавил в NPM Lob.com. Я начал делать функцию письма, и я получаю эту ошибку:
Uncaught TypeError: fs.readdirSync не является функцией
Вот как выглядит моя функция:
import { Meteor } from 'meteor/meteor';
import 'lob';
Meteor.methods({
sendLetter(name) {
Lob.letters.create({
description: 'Garrison Snelling',
to: {
name: name,
address_line1: '123 Test Street',
address_city: 'Mountain View',
address_state: 'CA',
address_zip: '94041',
address_country: 'US',
},
from: {
name: 'Ami Wang',
address_line1: '123 Test Avenue',
address_city: 'Mountain View',
address_state: 'CA',
address_zip: '94041',
address_country: 'US',
},
file: '<html style="padding-top: 3in; margin: .5in;">HTML Letter for {{name}}</html>',
data: {
name: 'Harry'
},
color: true
}, function (err, res) {
console.log(err, res);
})
.then(function (res) {
console.log('The Lob API responded with this letter object: ', res);
});
}
});
Я попытался включить 'fs' вручную, но не повезло... Я пытался:
var fs = require('fs'); // Didn't fail, but got same error
const fs = require('fs'); // Didn't fail, but got same error
var fs = Npm.require('fs'); // Didn't fail, but got same error
var fs = npm.require('fs'); // Failed
var fs = Meteor.require('fs');
Ничто из этого не сработало! Любая помощь в том, что здесь происходит, поможет.. Спасибо!
1 ответ
Так как большинство из вас может знать, что fs доступен только в узле, а не в интерфейсе.
Поэтому я не включил свой Meteor.Method в сервер, поэтому у него были проблемы с правами доступа к файлам. Как только я переместил это в папку сервера, это было хорошо пойти!