express-simple-geoip
v0.1.1
Published
The simplest geolocation middleware for Express that sets location data on the request object.
Downloads
2
Maintainers
Readme
express-simple-geoip
The simplest geolocation middleware for Express that sets location data on the request object.
Meta
- Author: Randall Degges
- Email: [email protected]
- Twitter: @rdegges
- Site: https://www.rdegges.com
- Status: production ready
Prerequisites
To use this library, you'll need to create a free GeoIPify account: https://geoipify.whoisxmlapi.com/
If you haven't done this yet, please do so now.
Installation
To install express-simple-geoip
using npm, simply run:
$ npm install express-simple-geoip
In the root of your project directory.
Usage
Once you have express-simple-geoip
installed, you can use it to easily get
the physical location of a given IP address for every incoming HTTP request your
web service gets.
This library gives you access to all sorts of geographical location data that you can use in your application in any number of ways.
const express = require("express");
const simpleGeoIP = require("express-simple-geoip");
let app = express();
app.use(simpleGeoIP("your-api-key"));
app.get("/", (req, res) => {
console.log(req.geoip); // print the incoming requester's geoip data
// ...
});
app.listen(3000);
If you run this minimal Express app and then visit the /
URL, you'll see some
geolocation data printed to the console that looks something like this (based
on your inbound IP address):
{
"country": "US",
"region": "California",
"city": "Mountain View",
"lat": 37.40599,
"lng": -122.078514,
"postalCode": "94043",
"timezone": "-08:00"
}
This library is built on top of the excellent node-simple-geoip
library. It will automatically tack geoip data onto each incoming req
object
as req.geoip
.
So all you need to do in your code is:
- Initialize the
simpleGeoIP
middleware, passing in your GeoIPify API key - Use the data found in
req.geoip
- ???
- Profit!
Pretty simple, right?!
Changelog
0.1.1: 04-18-2018
- Removing images from npm package.
0.1.0: 04-18-2018
- First release!