我是NodeJS初学者,跟随着一本书"使用MongoDB和NodeJS进行Web开发".我被困在第6章"闷闷不乐".当我使用multer进行文件上传时,服务器会抛出以下错误:
/Users/fk / Documents / imageuploader / node_modules / express / lib / application.js: 209
throw new TypeError('app.use() requires middleware functions'); ^
TypeError: app.use() requires middleware functions
Run Code Online (Sandbox Code Playgroud)
但当我用bodyParser替换它时,服务器会启动,但是当我点击上传按钮时,它会在浏览器上给出以下错误.
500 TypeError: Cannot read property 'file' of undefined
Run Code Online (Sandbox Code Playgroud)
但是,它应该将我重定向到另一个页面,其中显示上传的文件.
这是我的bodyParser代码,请查看我是否正确使用它,因为它在服务器启动时给了我"body-parser deprecated".我已经看到过像我这样的其他问题,但我遵循但没有一个真正起作用.
app.use(bodyParser.json());
app.use(bodyParser.urlencoded({
extended: true
}));
app.use(bodyParser({
uploadDir: path.join(__dirname, '../public/upload/temp')
}));
Run Code Online (Sandbox Code Playgroud)
以下代码显示了我如何使用multer,以防万一我不应该做的事情请告诉我.如果上传文件,正文解析器或者multer,哪一个会更好?
app.use(multer({
dest: path.join(__dirname, '../public/upload/temp')
}));
var saveImage = function() {
var possible = 'abcdefghijklmnopqrstuvwxyz0123456789',
imgUrl = '';
for (var i = 0; i < 6; i += 1) {
imgUrl …Run Code Online (Sandbox Code Playgroud) 我有两个具有不同属性的类,只有一个具有共同的属性。我想比较两者并提取缺少元素的列表。例如,我们有以下类,其中 inventoryId 和 id 相同,如果药物列表中缺少这些元素,我们将查找这些元素。
public class DrugInventory {
String inventoryId;
String drugStatus;
}
public class Drug{
String id;
String name;
String quantity;
}
Run Code Online (Sandbox Code Playgroud)
inventoryIDinDrugInventory等于idin Drug。因此,如果药物列表中缺少这两个值,我将查找它们。
List<DrugInventory> drugInventories = new ArrayList<>();
DrugInventory drugInventory = new DrugInventory("121212");
DrugInventory drugInventory1 = new DrugInventory("232323");
DrugInventory drugInventory2 = new DrugInventory("343434");
DrugInventory drugInventory3 = new DrugInventory("454545");
DrugInventory drugInventory4 = new DrugInventory("565656");
drugInventories.add(drugInventory);
drugInventories.add(drugInventory1);
drugInventories.add(drugInventory2);
drugInventories.add(drugInventory3);
drugInventories.add(drugInventory4);
List<Drug> drugs = new ArrayList<>();
Drug drug = new Drug("121212");
Drug drug1 = …Run Code Online (Sandbox Code Playgroud) arraylist ×1
body-parser ×1
express ×1
java ×1
javascript ×1
multer ×1
node.js ×1
performance ×1