Advertisement
Guest User

Untitled

a guest
Oct 12th, 2017
110
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.28 KB | None | 0 0
  1. var express = require('express'),
  2. mysql = require('mysql'),
  3. formidable = require('formidable'),
  4. fs = require('fs');
  5.  
  6. var app = express();
  7. var connection = mysql.createConnection({
  8. host: 'localhost',
  9. query: {
  10. pool: true
  11. },
  12. user: 'root',
  13. password: 'hello1004',
  14. database: 'nextagram'
  15. });
  16.  
  17. app.get('/', function(request, response) {
  18. response.send('hello world');
  19. response.end();
  20. console.log('test');
  21. });
  22.  
  23. app.get('/loadData/', function(req, res) {
  24.  
  25. var sql = 'select * from next_android_nextagram where ArticleNumber>' + req.query.ArticleNumber;
  26. connection.query(sql, function(err, rows, fields) {
  27. if (err) {
  28. res.sendStatus(400);
  29. return;
  30. }
  31. if (rows.length == 0) {
  32. res.sendStatus(204);
  33. } else {
  34. res.status(201).send(rows);
  35. res.end();
  36. }
  37. });
  38.  
  39. }); //loadData
  40.  
  41.  
  42. var savePath = 'D://nodetutorial//express_test//upload//';
  43.  
  44. var isFormData = function(req) {
  45. var type = req.headers['content-type'] || '';
  46. return 0 == type.indexOf('multipart/form-data');
  47. }
  48.  
  49. app.post('/upload', function(req, res) {
  50. var form = new formidable.IncomingForm();
  51. var body = {};
  52.  
  53. if (!isFormData(req)) {
  54. res.status(400).end('Bad Request : expecting multipart/form-data');
  55. return;
  56. }
  57.  
  58. form.on('field', function(name, value) {
  59. body[name] = value;
  60. });
  61.  
  62. form.on('fileBegin', function(name, file) {
  63. file.path = savePath + file.name;
  64. console.log(file.path);
  65. });
  66.  
  67. form.on('end', function(fields, files) {
  68. var sql = 'insert into next_android_nextagram' +
  69. '(Title, Writer, Id, Content, WriteDate, ImgName)' +
  70. 'values(?,?,?,?,?,?)';
  71. var args = [body.Title, body.Writer, body.Id,
  72. body.Content, body.WriteDate, body.ImgName
  73. ];
  74.  
  75. connection.query(sql, args, function(err, results, fields) {
  76. if (err) {
  77. res.sendStatus(500);
  78. console.log('error');
  79. return;
  80. }
  81. res.sendStatus(200);
  82. });
  83. });
  84. form.parse(req);
  85. });
  86.  
  87. app.get('/image/:filename', function(req, res) {
  88. var path = savePath + req.params.filename;
  89. fs.exists(path, function(exists) {
  90. if (exists) {
  91. var stream = fs.createReadStream(savePath + req.params.filename);
  92. stream.pipe(res);
  93. stream.on('close', function() {
  94. res.end();
  95. });
  96. } else {
  97. res.sendStatus(204);
  98. }
  99. });
  100. });
  101.  
  102. app.listen(5009);
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement