Java调用高德API接口

1.进入官网申key
https://lbs.amap.com/api/webservice/guide/api/georegeo
在这里插入图片描述
没账号的要先注册,这里不详细说了,自己看就行
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
2.编写代码
在这里插入图片描述

//根据经纬度获取位置信息
    public static String getAddress(String location) {
        StringBuffer str = new StringBuffer(ReGeoURL);
        str.append("location=").append(location).append("&key=").append(KEY).append("&output=json").append("&radius=1000&extensions=all");
        String addressMessage = HttpUtil.get(str.toString());
        JSONObject result = JSONObject.parseObject(addressMessage);
        String status = result.getString("status");
        if ((status.equals("1"))) {
            // 地址信息
            String code = result.getJSONObject("regeocode").getJSONObject("addressComponent").getString("towncode");
            String address=result.getJSONObject("regeocode").getString("formatted_address");
            return "地址编码: "+code+"     "+"具体地址:"+address;
        }
        return null;
    }

    //根据位置信息获取经纬度
    public static String getLongAndLat(String addressName) {
        StringBuffer str = new StringBuffer(GeoURL);
        str.append("address=").append(addressName).append("&key=").append(KEY).append("&output=json");
        String location = HttpUtil.get(str.toString());
        //把String对象反序列化为Json对象
        JSONObject result = JSONObject.parseObject(location);
        String status = result.getString("status");
        if ((status.equals("1"))) {
            // 地址信息
            JSONArray info = result.getJSONArray("geocodes");
            JSONObject geocodes=info.getJSONObject(0);
            return geocodes.getString("location");
        }
        return null;
    }

3.出错处理
除了错就看看info表,官网上对应的api返回参数说明上有
在这里插入图片描述
在这里插入图片描述

Logo

权威|前沿|技术|干货|国内首个API全生命周期开发者社区

更多推荐