搜索完之后我累了 谁能告诉我为什么当我在 postman.Note 中添加 Content-Type:multipart/form-data 时 post 方法不起作用。注意,如果不添加这个,一切都会正常工作。这是我的 app.js
var app = express();
var apiRoutes = require('./routes/apiRoutes');
// view engine setup
app.set('views', path.join(__dirname, 'views'));
app.set('view engine', 'jade');
app.use(logger('dev'));
app.use(bodyParser.json({limit: '50mb'}));
app.use(bodyParser.urlencoded([{extended: false}, {limit: '50mb'}]));
app.use(cookieParser());
app.use(express.static(path.join(__dirname, 'public')));
app.use(express.static(path.join(__dirname, 'uploads')));
app.use(multipart());;
app.use(apiRoutes)
这是我的 apiRoutes.js
var express = require('express');
var router = express.Router();
var fn = require('../webservices');
var multipart = require('connect-multiparty')();
router.post('/api/login', fn.test);
module.exports = router;
这是我的 webservices.js
function test(req,res){
console.log("hello there");
}
module.exports = {
test
}
这显示错误
类型错误:this[("visit"+ node.type)] 不是一个函数
请将整个错误和堆栈跟踪报告给 https://github.com/jadejs/jade/issues 在 Object.visitNode (/home/ais/Acruss-NodeJs/node_modules/jade/lib/compiler.js:225:37) 在 Object.visit (/home/ais/Acruss-NodeJs/node_modules/jade/lib/compiler.js:212:10) 在 Object.visitBlock (/home/ais/Acruss-NodeJs/node_modules/jade/lib/compiler.js:295:12) 在 Object.visitNode (/home/ais/Acruss-NodeJs/node_modules/jade/lib/compiler.js:225:37) 在 Object.visit (/home/ais/Acruss-NodeJs/node_modules/jade/lib/compiler.js:212:10) 在 Object.compile (/home/ais/Acruss-NodeJs/node_modules/jade/lib/compiler.js:66:10) 解析时(/home/ais/Acruss-NodeJs/node_modules/jade/lib/index.js:114:19) 在 Object.exports.compile (/home/ais/Acruss-NodeJs/node_modules/jade/lib/index.js:205:16) 在handleTemplateCache(/home/ais/Acruss-NodeJs/node_modules/jade/lib/index.js:174:25) 在 Object.exports.renderFile (/home/ais/Acruss-NodeJs/node_modules/jade/lib/index.js:380:10)
最佳答案
所以使用 ftp 所需的一切都是 here
我建议您阅读本文
关于node.js - express 邮寄方法不适用于内容类型 :multipart/form-data,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41521625/