Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- const http = require("http");
- const express = require("express");
- const bodyParser = require("body-parser");
- const mysql = require("mysql");
- //Conexión a la BD mediante promesas!
- function connectDB(options){
- return new Promise(function (resolve, reject){
- const conn = mysql.createConnection(options);
- conn.connect(function (err){
- if(err){
- reject(err);
- return;
- }
- resolve(conn);
- });
- });
- }
- function queryDB(conn, sql, data=null){
- return new Promise(function (resolve, reject){
- conn.query(sql, data, function(err, result){
- if(err){
- reject(err);
- return;
- }
- resolve(result);
- });
- });
- }
- function startServer(app, port=3000){
- return new Promise(function(resolve, reject){
- http.createServer(app).listen(port, function(){
- console.log(`Servidor iniciado en el puerto ${port}`);
- resolve;
- });
- });
- }
- //Dentro de la función program el código es "síncrono", pero la función program es
- //asíncrona, fuera de ella, puede haber otras funciones ejecutándose al mismo tiempo
- async function program(){
- const cnx = mysql.createConnection({
- host: "132.248...",
- user: "unam2",
- database: "unam",
- password: "pass..."
- });
- const app = express();
- // app.use("/", express.static("public"));
- app.use(bodyParser.json());
- app.use(bodyParser.urlencoded({extended: true}));
- app.get("/api/productos", async function(req, res){
- let sql=`select * from productos`;
- const records = await queryDB(cnx, sql);
- console.log(records.length);
- if(records.length === 0){
- res.status(400).send({
- error: true,
- message: "No existen productos registrados..."
- });
- return;
- }
- res.send(records);
- });
- await startServer(app);
- } //program
- program();
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement