Skip to content
Snippets Groups Projects
Commit d0a96f4a authored by Damien's avatar Damien
Browse files

1ere version où post et getall sont possibles

parent 351ce8b4
No related branches found
No related tags found
No related merge requests found
......@@ -8,6 +8,8 @@
"ecmaVersion": 2018
},
"rules": {
"no-trailing-spaces":"error",
"no-console" : "off",
"indent": [
"error",
4
......
var express = require("express");
var bodyParser = require("body-parser");
var mongoose = require("mongoose");
var routesToucan = require("./routes/routesToucan");
var app = express();
var dbName = "toucanDB";
var connectionString = "mongodb://localhost:27017/" + dbName;
mongoose.connect(connectionString, {useNewUrlParser: true});
var db = mongoose.connection;
db.on("error", console.error.bind(console, "connection error:"));
db.once("open", function() {
console.log("on est connecté!");
});
app.use(bodyParser.json());
app.use(bodyParser.urlencoded({extended: true}));
app.use("/api",routesToucan);
app.set("port", process.env.PORT || 8000);
var server = app.listen(app.get("port"), function() {
console.log("Express écoute sur le port " + server.address().port);
});
var mangoose = require("mongoose");
var mongoose = require("mongoose");
var Schema = mangoose.Schema;
var Schema = mongoose.Schema;
/**
* Indique ce que l'on doit trouver dans un toucan
*/
var toucanSchema = new Schema ({
title: String,
date: Date,
title: {type : String, required: true}, // Chaque toucan doit avoir un titre et une date
date: {type : Date, required: true},
});
// La date doit être unique
toucanSchema.index({date:-1},{unique: true});
module.exports = mangoose.model("Toucan",toucanSchema);
\ No newline at end of file
module.exports = mongoose.model("Toucan",toucanSchema);
\ No newline at end of file
......@@ -6,6 +6,7 @@
"author": "Damien <damien.armillon@gmail.com>",
"license": "MIT",
"dependencies": {
"body-parser": "^1.18.3",
"express": "^4.16.4",
"mongoose": "^5.5.3"
}
......
var express = require("express");
var Toucan = require("../models/modelToucan");
var router = express.Router();
router.route("/toucans")
// Une route qui renvoie un json avec tous les toucans
.get(function(req,res) {
Toucan.find()
.sort({date:-1})
.exec(function (err, toucans) {
if (err) {
res.send(err);
}
res.json(toucans);
});
})
// Une route pour créer un toucan
.post(function(req,res) {
var toucan = new Toucan(req.body);
toucan.save(function(err) {
if (err) {
res.send(err);
}
res.send({message: "Toucan ajouté !"});
});
});
module.exports = router;
\ No newline at end of file
......@@ -27,7 +27,7 @@ bluebird@3.5.1:
resolved "https://registry.yarnpkg.com/bluebird/-/bluebird-3.5.1.tgz#d9551f9de98f1fcda1e683d17ee91a0602ee2eb9"
integrity sha512-MKiLiV+I1AA596t9w1sQJ8jkiSr5+ZKi0WKrYGUn6d1Fx+Ij4tIj+m2WMQSGczs5jZVxV339chE8iwk6F64wjA==
body-parser@1.18.3:
body-parser@1.18.3, body-parser@^1.18.3:
version "1.18.3"
resolved "https://registry.yarnpkg.com/body-parser/-/body-parser-1.18.3.tgz#5b292198ffdd553b3a0f20ded0592b956955c8b4"
integrity sha1-WykhmP/dVTs6DyDe0FkrlWlVyLQ=
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment