Advertisement
Guest User

Untitled

a guest
May 17th, 2016
83
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.50 KB | None | 0 0
  1. var express = require('express');
  2. var app = express();
  3. var mongoose = require('mongoose');
  4. var bodyParser = require('body-parser');
  5. var passport = require('passport');
  6.  
  7. mongoose.connect('mongodb://localhost/somedatabasename');
  8.  
  9. app.set('port', process.env.PORT || 3000);
  10. app.use(bodyParser.urlencoded({ extended: true }));
  11. app.use(bodyParser.json());
  12.  
  13. app.use(passport.initialize());
  14. // ... Passport JWT Strategy goes here - omitted for simplicity ...
  15.  
  16. var userRouter = require('./api/users/routes');
  17. app.use('/users', userRouter);
  18. var todoRouter = require('./api/todos/routes');
  19. app.use('/todos', todoRouter);
  20.  
  21. app.listen(app.get('port'), function() {
  22. console.log('App now running on http://localhost:' + app.get('port'));
  23. });
  24.  
  25. var router = require('express').Router();
  26. var controller = require('./controller');
  27. var passport = require('passport');
  28.  
  29. router.route('/')
  30. .all(passport.authenticate('jwt', { session: false}))
  31. .get(controller.getAll)
  32. .post(controller.create);
  33.  
  34. router.route('/:id')
  35. .all(passport.authenticate('jwt', { session: false}))
  36. .get(controller.getOne)
  37. .put(controller.update)
  38. .delete(controller.delete);
  39.  
  40. module.exports = router;
  41.  
  42. var router = require('express').Router();
  43. var controller = require('./controller');
  44. var passport = require('passport');
  45.  
  46. router.route('/')
  47. // User signup
  48. .post(controller.create);
  49.  
  50. router.route('/me')
  51. // User Login
  52. .post(passport.authenticate('local', { session: false}), controller.login)
  53. // Get current user's data
  54. .get(passport.authenticate('jwt', { session: false}), controller.getOne)
  55. // Update current user's data
  56. .put(passport.authenticate('jwt', { session: false}), controller.update)
  57. // Delete current user
  58. .delete(passport.authenticate('jwt', { session: false}), controller.delete);
  59.  
  60. module.exports = router;
  61.  
  62. var mongoose = require('mongoose');
  63. var bcrypt = require('bcrypt');
  64.  
  65. var UserSchema = new mongoose.Schema({
  66. username: {
  67. type: String,
  68. required: true,
  69. unique: true
  70. },
  71. password: {
  72. type: String,
  73. required: true
  74. }
  75. });
  76.  
  77. // ... for simplicity imagine methods here to
  78. // - hash passwords on a pre save hook using bcrypt
  79. // - compare passwords using bcrypt when logging in
  80.  
  81. module.exports = mongoose.model('User', UserSchema);
  82.  
  83. var mongoose = require('mongoose');
  84. var Schema = mongoose.Schema;
  85.  
  86. var momentSchema = new Schema({
  87. title: {
  88. type: String
  89. },
  90.  
  91. // Bunch of other fields here...
  92.  
  93. _user: {
  94. type: Schema.Types.ObjectId,
  95. ref: 'User'
  96. }
  97. });
  98.  
  99. module.exports = mongoose.model('Moment', momentSchema);
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement