Code Bye

百度地图获取地址经纬度

本人在本地可以测试通过 ,但是部署到本人的公网服务器就报错
错误消息大致是 无法识别的主机 api.map.baidu.com
获取经纬度代码如下:
	URL url = null;
		System.out.println("坐标地址==========>" + address);
		try {
			address = URLEncoder.encode(address, "UTF-8");
		} catch (UnsupportedEncodingException e1) {
			// TODO Auto-generated catch block
			e1.printStackTrace();
		}//对url中的汉字进行转码
		StringBuffer buffer = new StringBuffer();
		String result_info = null;	//结果信息
		try {
			url = new URL("http://api.map.baidu.com/geocoder/v2/?ak=5c308cc0b5778382a04786719b815886&callback=renderOption&output=json&address="+address );
			System.out.println("坐标地址=========111=>" + address);
			BufferedReader bufferedReader = null;
			bufferedReader = new BufferedReader(new InputStreamReader( url.openStream()));
			while ((result_info = bufferedReader.readLine())!= null) {
				buffer.append(result_info);
			}
		} catch (Exception e) {
			e.printStackTrace();
		}
		result_info = buffer.toString();
		Result res = null;
		String point = null;
		int index = result_info.indexOf("status")+8;
		if(result_info.substring(index, index+1).equals("0")){
			result_info = result_info.substring(result_info.indexOf("(")+1, result_info.lastIndexOf(")"));
			JSONObject jsonobject = JSONObject.fromObject(result_info);
			res = (Result)JSONObject.toBean(jsonobject, Result.class);
			 point = res.getResult().getLocation().getLng() + "|" + res.getResult().getLocation().getLat();
		}else{

			point="地名有误!";
		}

大家看看是怎么回事,

解决方案

CodeBye 版权所有丨如未注明 , 均为原创丨本网站采用BY-NC-SA协议进行授权 , 转载请注明百度地图获取地址经纬度