Guest User

Untitled

a guest
Jun 14th, 2018
150
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 3.18 KB | None | 0 0
  1. var express = require('express');
  2. var router = express.Router();
  3.  
  4. const multer = require('multer');
  5. const upload = multer({ dest: 'tmp/' });
  6. const fs = require('fs');
  7.  
  8. /* GET home page. */
  9. router.get('/', function (req, res, next) {
  10. res.render('index', { title: 'Express' });
  11. });
  12. router.get('/about', function (req, res, next) {
  13. res.render('about', { title: 'Express about page' });
  14. });
  15.  
  16. /* quete CAN I GET SOME POST */
  17. router.get('/forms', function (req, res, next) {
  18. res.render('forms', { title: 'Express forms page' });
  19. });
  20. router.post('/forms-:num', function (req, res) {
  21. res.render('forms', {
  22. title: 'Express about page'
  23. });
  24. console.log(req.body.formIdable);
  25. console.log(req.params.num);
  26. console.log(req.query.level);
  27. });
  28. module.exports = router;
  29.  
  30. // upload de fichiers
  31. router.get('/monupload', function (req, res, next) {
  32. res.render('monupload', { title: 'Express upload page' });
  33. });
  34. router.post('/monupload', function (req, res) {
  35. res.render('monupload', {
  36. title: 'Express upload page'
  37. });
  38. console.log(req);
  39. });
  40.  
  41. router.post('/uploaddufichier', upload.array('monfichier',3), function (req, res, next) {
  42. // traitement du formulaire
  43. console.log('je traite l\'upload');
  44. if (req.files.every(file => file.size > 3000000)) {
  45. return res.status(500).send("file > 3Mo");
  46. }
  47. if (req.files.every(file => file.mimetype !== 'image/png')) {
  48. return res.status(500).send("file must be .png");
  49. }
  50. req.files.map(function (file) {
  51. fs.rename(file.path, 'public/images/' + file.originalname, function (err) {
  52. if (err) {
  53. res.send('Somethings went wrong');
  54. } else {
  55. res.send('Success');
  56. }
  57. })
  58. })
  59. })
  60.  
  61. // Midelware dans Express, afficher message dans la console
  62. router.get('/superMiddleware', (req, res, next) => {
  63. console.log('hello middleware');
  64. next();
  65. },
  66. (req, res, next) => {
  67. res.send('Express upload page');
  68. }
  69. );
  70.  
  71. // session, initialiser une variable et l'afficher
  72. router.get('/session-in', (req, res) => {
  73. req.session.song = 'be bop a lula';
  74. res.end();
  75. })
  76. router.get('/session-out', (req, res) => {
  77. res.send(req.session.song);
  78. })
  79.  
  80. // envoi de mail
  81. const nodemailer = require("nodemailer");
  82.  
  83. router.get('/askForCookiesRecipe', (req, res) => {
  84.  
  85. // Création de la méthode de transport de l'email
  86. nodemailer.createTestAccount((err, account) => {
  87.  
  88. var transport = nodemailer.createTransport({
  89. host: "smtp.mailtrap.io",
  90. port: 2525,
  91. auth: {
  92. user: "a268d626e22199",
  93. pass: "443ff7d5d2fd34"
  94. }
  95. });
  96.  
  97. let mailOptions = {
  98. from: '"Fred Foo 👻" <foo@example.com>', // sender address
  99. to: 'bar@example.com, baz@example.com', // list of receivers
  100. subject: 'Hello ✔', // Subject line
  101. text: 'Hello grandma! Can you give me your cookies recipe please?', // plain text body
  102. html: '<b>Hello grandma! Can you give me your cookies recipe please?</b>' // html body
  103. };
  104.  
  105. transport.sendMail(mailOptions, (error, info) => {
  106. if (error) {
  107. return console.log(error);
  108. }
  109. console.log('Message sent: %s', info.messageId);
  110. console.log('Preview URL: %s', nodemailer.getTestMessageUrl(info));
  111. });
  112.  
  113. });
  114. res.send("Mail send !!!");
  115. })
  116.  
  117. module.exports = router;
Add Comment
Please, Sign In to add comment