diff --git a/Node/Property/index.js b/Node/Property/index.js index 503cb22..8d1d1a9 100644 --- a/Node/Property/index.js +++ b/Node/Property/index.js @@ -1,8 +1,10 @@ const express = require('express') +const cors = require('cors') const bodyParser = require('body-parser') const db = require('./queries') const app = express() +app.use(cors()) const port = 3000 const getRealEstates = (request, response) => { @@ -26,6 +28,7 @@ app.get('/', (request, response) => { }); app.get('/real-estate', db.getAllRealEstate); +app.post('/real-estate', db.insertRealEstate); app.listen(port, () => { console.log(`App running on port ${port}.`) diff --git a/Node/Property/package-lock.json b/Node/Property/package-lock.json index 34079bb..819c3ff 100644 --- a/Node/Property/package-lock.json +++ b/Node/Property/package-lock.json @@ -9,6 +9,7 @@ "version": "1.0.0", "license": "ISC", "dependencies": { + "cors": "^2.8.5", "express": "^4.17.1", "pg": "^8.5.1" } @@ -98,6 +99,18 @@ "resolved": "https://registry.npmjs.org/cookie-signature/-/cookie-signature-1.0.6.tgz", "integrity": "sha1-4wOogrNCzD7oylE6eZmXNNqzriw=" }, + "node_modules/cors": { + "version": "2.8.5", + "resolved": "https://registry.npmjs.org/cors/-/cors-2.8.5.tgz", + "integrity": "sha512-KIHbLJqu73RGr/hnbrO9uBeixNGuvSQjul/jdFvS/KFSIH1hWVd1ng7zOHx+YrEfInLG7q4n6GHQ9cDtxv/P6g==", + "dependencies": { + "object-assign": "^4", + "vary": "^1" + }, + "engines": { + "node": ">= 0.10" + } + }, "node_modules/debug": { "version": "2.6.9", "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", @@ -321,6 +334,14 @@ "node": ">= 0.6" } }, + "node_modules/object-assign": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", + "integrity": "sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM=", + "engines": { + "node": ">=0.10.0" + } + }, "node_modules/on-finished": { "version": "2.3.0", "resolved": "https://registry.npmjs.org/on-finished/-/on-finished-2.3.0.tgz", @@ -737,6 +758,15 @@ "resolved": "https://registry.npmjs.org/cookie-signature/-/cookie-signature-1.0.6.tgz", "integrity": "sha1-4wOogrNCzD7oylE6eZmXNNqzriw=" }, + "cors": { + "version": "2.8.5", + "resolved": "https://registry.npmjs.org/cors/-/cors-2.8.5.tgz", + "integrity": "sha512-KIHbLJqu73RGr/hnbrO9uBeixNGuvSQjul/jdFvS/KFSIH1hWVd1ng7zOHx+YrEfInLG7q4n6GHQ9cDtxv/P6g==", + "requires": { + "object-assign": "^4", + "vary": "^1" + } + }, "debug": { "version": "2.6.9", "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", @@ -909,6 +939,11 @@ "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.6.2.tgz", "integrity": "sha512-hZXc7K2e+PgeI1eDBe/10Ard4ekbfrrqG8Ep+8Jmf4JID2bNg7NvCPOZN+kfF574pFQI7mum2AUqDidoKqcTOw==" }, + "object-assign": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", + "integrity": "sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM=" + }, "on-finished": { "version": "2.3.0", "resolved": "https://registry.npmjs.org/on-finished/-/on-finished-2.3.0.tgz", diff --git a/Node/Property/package.json b/Node/Property/package.json index f56a4d0..54bd400 100644 --- a/Node/Property/package.json +++ b/Node/Property/package.json @@ -9,6 +9,7 @@ "author": "", "license": "ISC", "dependencies": { + "cors": "^2.8.5", "express": "^4.17.1", "pg": "^8.5.1" } diff --git a/Node/Property/queries.js b/Node/Property/queries.js index 6c29a0a..3405462 100644 --- a/Node/Property/queries.js +++ b/Node/Property/queries.js @@ -8,7 +8,7 @@ const pool = new Pool({ }); const getAllRealEstate = (request, response) => { - pool.query('SELECT * FROM real_estate ORDER BY id ASC', (error, results) => { + pool.query('SELECT * FROM real_estate ORDER BY id DESC', (error, results) => { if (error) { throw error } @@ -16,6 +16,18 @@ const getAllRealEstate = (request, response) => { }) }; +const insertRealEstate = (request, response) => { + const { address, area } = request.body + + pool.query('INSERT INTO real_estate (address, area) VALUES ($1, $2)', [address, area], (error, results) => { + if (error) { + throw error + } + response.status(201).send('done :)') + }) +} + module.exports = { - getAllRealEstate + getAllRealEstate, + insertRealEstate } \ No newline at end of file