Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- //Base server setup for REST API
- var express = require('express');
- var bodyParser = require('body-parser');
- var cookieParser = require('cookie-parser');
- var path = require('path');
- var session = require('express-session');
- var logger = require('morgan');
- var passport = require('passport');
- //Server setup
- var mongoose = require('mongoose');
- var mongodb = require('mongodb');
- //Initial app setup, express and port
- var app = express();
- var port = 3003;
- //Connectionstring to our MongoDB - Change connectionstring to live URL, when ready for production
- mongoose.connect('mongodb://localhost/');
- //Models - Schemas for REST-API(Express)
- var User = require('./Models/user');
- //REST URLS aka. Routes
- var router = express.Router();
- //App middleware - enable logger, session, body and cookie-parser
- app.use(logger('dev'));
- app.use(session({
- secret: 'keyboard cat',
- resave: 'true',
- saveUninitialized: 'true'
- }));
- app.use(bodyParser.json());
- app.use(bodyParser.urlencoded({ extended: false }));
- app.use(cookieParser());
- app.use(express.static(path.join(__dirname, 'public')));
- app.use(passport.initialize());
- app.use(passport.session());
- //Use a API tester, EG Postman - make a get request to localhost:3003/ to get a response
- app.get('/', function (req, res) {
- res.json({ message: 'Hello, our API is running' });
- });
- //A message to our console whenever you manipulate with data in the API
- app.use(function (res, req, next) {
- console.log('You have manipulated with some data!')
- next();
- });
- // Opretter et medlem
- app.post('/user', function (req, res) {
- var user = new User();
- user.username = req.body.username;
- user.password = req.body.password;
- user.save(function (err) {
- if (err)
- res.send(err);
- res.json({ message: 'Der er oprettet et medlem!!' });
- });
- });
- app.get('/user', function (req, res) {
- User.find(function (err, user) {
- if (err) {
- res.send(err);
- }
- res.json(user);
- });
- });
- app.get('/user/:user_id', function (req, res) {
- User.findById(req.params.user_id, function (err, user) {
- if (err) {
- res.send(err);
- }
- res.json(user);
- });
- });
- // Opdatere et medlem med udfra ID
- app.put('/user/:user_id', function (req, res) {
- User.findById(req.params.user_id, function (err, user) {
- if (err) {
- res.send(err);
- }
- user.username = req.body.username;
- user.save(function (err) {
- if (err) {
- res.send(err);
- }
- res.json({ message: 'Medlem updated!' });
- });
- });
- });
- app.delete('/user/:user_id', function (req, res) {
- User.remove({
- _id: req.params.user_id
- }, function (err, user) {
- if (err) {
- res.send(err);
- }
- res.json({ message: 'Bruger slettet' });
- });
- });
- //Consolmessage when we start our server
- app.listen(port);
- console.log('We are live and hot on port ' + port);
- exports = module.exports = app;
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement