/**
 * Created by waitfish on 15/5/26.
 */


var ip_local = require('../models/ipinfo'); //获取 ip_local 信息
var request = require('request');

/**
 * 接到请求后，先从本地数据库查询，如果没有，从淘宝接口查询，然后记录到数据库
 * @param req
 * @param res
 */
function get_local_by_ip(req, res) {


    ip_local.findOne({ip: req.query.ip}, function (err, ipfind) {
            /**
             * 先从自己的数据库查询
             */
            if (err) throw err;
            if (ipfind) {
                res.json(ipfind)
            } else {
                /**
                 * 若找不到则从淘宝的api拿，拿到后存到数据库，返回得到的结果。
                 */
                request.post({
                        url: 'http://ip.taobao.com/service/getIpInfo.php',
                        form: {ip: req.query.ip}
                    },
                    function (error, response, body) {
                        var info = JSON.parse(body);
                        if (!error && response.statusCode == 200) {
                            if (info.code === 0) {
                                res.json(info.data)
                            }
                            var new_ip = new ip_local(info.data);
                            new_ip.save()

                        }
                    }
                )

            }

        }
    )
}


exports.get_local_by_ip = get_local_by_ip;
@@ -248,18 +248,16 @@
  res) %7B%0A
-%0A%0A
     ip_l
@@ -404,16 +404,50 @@
 ow err;%0A
+%0A            //console.log(err);%0A%0A
         
@@ -1074,34 +1074,8 @@
     
-                        %7D%0A
     
@@ -1164,16 +1164,20 @@
         
+    
 new_ip.s
@@ -1182,16 +1182,142 @@
 .save()%0A
+                            %7Delse%7B%0A                                res.send(%22%E6%8E%A5%E5%8F%A3%E8%B0%83%E7%94%A8%E5%A4%B1%E8%B4%A5%EF%BC%8C%E8%AF%B7%E6%A3%80%E6%9F%A5%E6%8E%A5%E5%8F%A3%E6%96%87%E6%A1%A3%E3%80%82%22)%0A                            %7D%0A%0A
 %0A       
@@ -1401,22 +1401,24 @@
       %7D%0A
-
     )%0A
+%0A%0A
 %7D%0A%0A%0Aexpo

fix error ip format bug!