试图找到一个解决方案,用于存储来自lil' app我目前正在构建,我尝试使用filepicker节点模块并尝试了我可以创建的最简单的示例:
app.get('/test', function(req, res) {
fs.readFile('myFile.txt', function (err, buf){
filepicker.getUrlFromBuffer(buf, {persist: true}, function (err, url) {
console.log("myfile.txt is now stored at " + url);
});
return res.send('something');
});
我收到此错误消息:" TypeError:无法读取属性' url'未定义"。 但是,当我检查filepicker.io网站上的控制台时,我可以看到该文件已被上传。
这是我从以下网站获取filepicker节点模块的github repo: https://github.com/treygriffith/filepicker/blob/master/README.md
谢谢你们!
答案 0 :(得分:1)
自该模块上次更新(2012)以来,filepicker.io很可能更改了API。 Here是其当前REST API的文档,应该很容易通过request之类的模块手动使用来上传文件。例如:
var request = require('request');
var FILEPICKER_API_KEY = 'foobarbaz';
var formData = {
fileUpload: fs.createReadStream(__dirname + '/unicycle.jpg')
},
cfg = {
url: 'https://www.filepicker.io/api/store/S3?key=' + FILEPICKER_API_KEY,
formData: formData
};
request.post(cfg, function(err, res, body) {
if (err)
return console.error('upload failed:', err);
var response;
try {
response = JSON.parse(body);
} catch (ex) {
console.log(ex);
}
if (response)
console.dir(response);
});