通过Java代码实现手机号归属地查询

所需工具:1、elipse  2、json所需jar包

代码:

package com.mobilephone;


import java.io.BufferedReader;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.net.HttpURLConnection;
import java.net.URL;


import net.sf.json.JSONObject;


public class MainActivity {


/**
* @param urlAll
*            :请求接口
* @param httpArg
*            :参数
* @return 返回结果
*/
public static String request(String httpUrl, String httpArg) {
BufferedReader reader = null;
String result = null;
StringBuffer sbf = new StringBuffer();
httpUrl = httpUrl + "?" + httpArg;


try {
URL url = new URL(httpUrl);
HttpURLConnection connection = (HttpURLConnection) url.openConnection();
connection.setRequestMethod("GET");
// 填入apikey到HTTP header
connection.setRequestProperty("apikey", "73d6548dfb7223d3421608255a592ac3");
connection.connect();
InputStream is = connection.getInputStream();
reader = new BufferedReader(new InputStreamReader(is, "UTF-8"));
String strRead = null;
while ((strRead = reader.readLine()) != null) {
sbf.append(strRead);
sbf.append("\r\n");
}
reader.close();
result = sbf.toString();
} catch (Exception e) {
e.printStackTrace();
}
return result;
}


public static void main(String[] args) {
String resout = "";
String httpUrl = "http://apis.baidu.com/apistore/mobilenumber/mobilenumber";
String phonenum = "110";
String httpArg = "phone=" + phonenum;
String jsonResult = request(httpUrl, httpArg);
System.out.println(jsonResult);
JSONObject obj = JSONObject.fromObject(jsonResult);


String code = obj.get("errNum").toString();
if (code.equals("0")) {
JSONObject obj2 = (JSONObject) obj.get("retData");
resout = obj2.get("province") + "-" + obj2.get("city") + "-" + obj2.get("supplier") + "-"
+ obj2.get("suit");
} else {
resout = obj.get("retMsg").toString();
}
System.out.println(resout);
}
}


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

番茄小能手

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值