bonjour,
j'ai suivi un tutoriel dans youtube et j'ai pas vu tout ces codes sur le upload file avec multer,
mon problème est pourquoi quant je fait avec postman et il est toujours en load, mes codes sont
app.js
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
 
const express = require('express')
const app = express();
const cors = require('cors')
const morgan = require('morgan');
const bodyParser = require('body-parser');
const mongoose = require('mongoose');
 
const dbConfig = require('./config/database')
const productRoutes = require("./routes/products");
 
mongoose.connect(dbConfig.url, {
    useNewUrlParser: true
}).then(() => {
    console.log('Successfully connect database');
 
}).catch(err => {
    console.log('not connect database');
    process.exit();
})
// mongoose.connect(
//     "mongodb://node-shop:" +
//     process.env.MONGO_ATLAS_PW +
//     "@node-rest-shop-shard-00-00-wovcj.mongodb.net:27017,node-rest-shop",
//     {
//         useMongoClient: true
//     }
// );
 
mongoose.Promise = global.Promise;
 
app.use(cors());
app.use(morgan("dev"));
app.use(bodyParser.urlencoded({ extended: true }));
app.use(bodyParser.json());
 
 
app.listen(3000, () => {
    console.log("Server listening 3000");
 
})
app.use('/', productRoutes)


dans le config/database.js
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
 
module.exports = {
    url: 'mongodb://localhost:27017/tuto'
}
et le /routes/products.js

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
 
const express = require("express");
const router = express.Router();
const mongoose = require('mongoose')
const multer = require('multer')
const upload = multer({dest:'uploads/'})
 
const Product = require("../models/product")
 
router.get("/", (req, res, next) => {
    Product.find()
        .select('name price _i')
        .exec()
        .then(docs => {
            const response = {
                count: docs.length,
                products: docs.map(doc =>{
                    return {
                        name: doc.name,
                        price: doc.price,
                        _id: doc._id,
                        request:{
                            type: "GET",
                            url: "http://localhost:3000/products/" + doc._id
                        }
                    };
                })
            };
            res.status(200).json(response);
        })
        .catch(err => {
            console.log(err);
            res.status(500).json({
                error: err
            });
 
        });
});
router.post('/', upload.single('productImage'),(req, res, next) => {
    console.log(req.file);
 
    const product = new Product({
        _id: new mongoose.Types.ObjectId(),
        name: req.body.name,
        price: req.body.price
    })
    product
        .save()
        .then(result => {
            console.log(result);
            res.status(201).json({
                message: "Created product successfully",
                createdProduct: {
                    name: result.name,
                    price: result.price,
                    _id: result._id,
                    request:{
                        type: 'GET',
                        url: "http://localhost:3000/products"+ result._id
                    }
                }
            })
        })
        .catch(err => {
            console.log(err);
            res.status(500).json({
                error: err
            });
        });
});
module.exports = router
s'il vous plait, aide moi