Skip to content

movableink/GeoIP

 
 

Repository files navigation

GeoIP binding for nodejs(>=0.10) and iojs

NPM version Build status Dependencies Status Bitdeli Badge

Get geolocation information based on domain or IP address.

Limitations

Since this module required to compile geoip c library during the installtion, due to the difficulty of compilifa this c library on windows, currenlty, this module can not be used on windows, yet.

I recommend that choosing a pure javascript implementation instead, node-geoip maybe your best candicate.

###Technical Architecture

new_architecture

###Memory leak issue As up to the version 0.4.7 (commit 22dadd98646f75318412b54b3de90cc079d34b1d), there will be some memory leak when new a object from GeoIP class.

Here is the report, I'll update it frequently.

Fortunately, the number of leaked bytes is not huge, and you wont new a object very offen.

If you are willing to fix this but, please fork this project.

###Need support special database? Corrently, this package supports the most common databases from MaxMind.

But, it still a lot of special databases out there.

Since I am not a user of any product/service of maxmind, if you require this pacakge to support special db, please make sure you can delivery the testing db and the ip address/domain that can be used to against the db.

##Installation

[sudo] npm install geoip [-g]

##Usage

See usage doc.

##Testing

You'll need dummy maxmind files; you can get them via:

git clone https://github.com/maxmind/geoip-api-php.git database/php
cd database
ln -s php/tests/data/*.dat .

Then you can run tests with:

npm run test

About

GeoIP binding for nodejs(>=0.10) and iojs

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • JavaScript 50.7%
  • C++ 28.9%
  • CoffeeScript 8.0%
  • C 7.1%
  • HTML 2.2%
  • Shell 1.6%
  • Python 1.5%