以京東萬象API為例,調用手機好歸屬地。
進入到,手機號歸屬地的api接口測試頁面,先在該頁面測試,成功后,到java中手擼。
上圖看到,已經是可以用的了。
然后創建一個maven項目,需要用到Spring的StreamUtrls工具類,所以導入一下下面這個依賴,其它什么都不用,直接開干。
<dependencies>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-webmvc</artifactId>
<version>5.3.1</version>
</dependency>
</dependencies>
代碼:
import org.springframework.util.StreamUtils;
import java.net.HttpURLConnection;
import java.net.URL;
import java.nio.charset.Charset;
/**
* @author langkye
*/
public class MyHttp {
public static void main(String[] args) throws Exception {
//1.定義URL
URL url = new URL("https://way.jd.com/jisuapi/query4");
//2.打開鏈接
HttpURLConnection connection = (HttpURLConnection) url.openConnection();
//3.設置請求類型
connection.setRequestMethod("POST");
//4.設置請求參數 | phone=13800138000&appkey=dc2844cb3cd5ff4bf232c037eb23766b
connection.setDoOutput(true);
//聲明參數
StringBuilder params = new StringBuilder();
//查詢的手機號
long phone = 13456755448L;
//appkey是自己的萬象帳號的appkey,測試時,頁面會生成,下面是做示例,非真實,不能用
String appkey = "dc2844c*****";
//添加參數
params.append("shouji=")
.append(phone)
.append("&appkey=")
.append(appkey);
//設置輸出流編碼格式
connection.getOutputStream().write(params.toString().getBytes("UTF-8"));
//5.發起請求
connection.connect();
//6.接受數據,使用Spring的工具類將輸入流轉為字符串,設置編碼為UTF-8
String response = StreamUtils.copyToString(connection.getInputStream(), Charset.forName("UTF-8"));
System.out.println("response = " + response);
}
}
輸出:
response = {"code":"10000","charge":false,"msg":"查詢成功","result":{"status":0,"msg":"ok","result":{"shouji":"13456755448","province":"浙江","city":"杭州","company":"中國移動","areacode":"0571"}}