[原创] 根据ip获取地址信息

ip 位置信息

2015-07-28 2027

在开发中,常常会遇到需要获取微信信息的问题。如果是手机可以调用位置服务,如果是电脑就只能根据ip获取地址信息了。

可以调用新浪的api,根据ip获取位置信息:

ruby代码


def get_address_by_ip
    #####客户端ip
    str_client_ip = request.remote_ip

    ###### 方法1  使用Net::HTTP模块
    # uri = URI('http://int.dpool.sina.com.cn/iplookup/iplookup.php?format=json&ip=112.65.183.30')
    # puts res = Net::HTTP.get(uri) # => String
    # render json: JSON.parse(res)
    # #json_data = JSON.parse(res)
    # #render text: json_data["province"]
    ###### 方法2  使用
    puts res = RestClient.get('http://int.dpool.sina.com.cn/iplookup/iplookup.php?format=json&ip='+str_client_ip)
    render json: JSON.parse(res)
  end


php代码

function get_address_by_ip(){
        $ip = $_SERVER["REMOTE_ADDR"];
        $str_url = "http://int.dpool.sina.com.cn/iplookup/iplookup.php?format=json&ip=".$ip;
        $arr_data = json_decode($this->http_get($str_url),true);
        return $arr_data;
    }