【发布时间】:2017-04-09 08:47:50
【问题描述】:
我正在编写一个关于使用 Express.js 的 REST API。 API 需要接受来自客户端的视频文件并将其上传到 cloudinary。当我使用 api 将文件返回给客户端(作为测试)时,一切正常。然后,当我尝试将相同的文件上传到 cloudinary 时,出现错误。错误说:
"file.match is not a function"
我不确定 file.match 是什么,也不知道为什么它会给我带来问题。如果其他人遇到此问题,您是如何解决的? 下面是给我问题的代码:
app.js
var express = require('express');
var formidable = require('express-formidable');
var app = express();
app.use(formidable());
var routes = require('./routes');
app.use('/routes', routes);
var port = process.env.PORT || 3000;
app.listen(port, function() {
console.log('Express server is listening on port ' + port);
});
routes.js
var express = require('express');
var cloudinary = require('../cloudinary.js').cloudinary;
var router = express.Router();
router.post('/upload', function(req, res, next) {
cloudinary.uploader.upload(req.files, function(result) {
console.log(result);
});
});
module.exports = router;
cloudinary.js
var cloudinary = require('cloudinary');
cloudinary.config({
cloud_name: 'name',
api_key: 'key',
api_secret: 'secret'
});
module.exports.cloudinary = cloudinary;
【问题讨论】:
-
因为 cloudinary.js 是你自己的代码,所以希望你也显示该代码
-
@Simon Ive 添加了上面的代码
标签: javascript express cloudinary formidable