On my website I originally implemented a link back to here, my blog, in the nav bar. I've been recently playing around a lot with Node.js and APIs. My aim was to display basic post info such as:
- Title
- Description
- Tags
- URL
- Created date
The end result was this: (site isn't currently reflecting this change and isn't finished)
Let's begin with the usual setup, create a new project folder in your workplace and cd
init. Run npm init
and install the following packages:
var express = require('express'),
cors = require("cors"),
app = express(),
bodyParser = require('body-parser'),
axios = require('axios');
The code is pretty straightforward, a simple GET
so just need to call http://localhost:3000/api/posts
to get the JSON response data.
var express = require('express'),
cors = require("cors"),
app = express(),
bodyParser = require('body-parser'),
axios = require('axios');
app.use(bodyParser.urlencoded({ extended: true }));
app.use(bodyParser.json());
app.use(cors());
app.get("/api/posts", (req, res) => {
axios.get('https://dev.to/api/articles?username=lornasw93').then(resp => {
res.send(resp.data);
}).catch(err => {
res.send(err);
});
});
const PORT = process.env.PORT || 3000;
module.exports = app.listen(PORT, () => {
console.log('Server running on port %d', PORT);
})
The repo lives here.
This project is very much a work in progress so will update the repo when needed.
Thanks! ๐
Top comments (0)