zoukankan      html  css  js  c++  java
  • 调用接口的正确方式

    京东万象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"}}
  • 相关阅读:
    python mysqldb 模块学习
    接口自动化学习笔记
    unittest 单元测试框架断言方法
    Python+Django+Bootstrap 框架环境搭建
    Django CSRF cookie not set.错误
    django安装与卸载
    jmeter+ant+jenkins接口自动环境搭建
    jmeter 非GUI模式下测试报错An error occurred: Unknown arg:
    非 GUI 模式运行 JMeter 压力测试
    Android SDK开发包国内下载地址
  • 原文地址:https://www.cnblogs.com/langkyeSir/p/14049317.html
Copyright © 2011-2022 走看看