一、HttpClient

1、介绍

HttpClient 是阿帕奇下的子项目,可以用来提供高效的、最新的、功能丰富的支持HTTP协议的客户端编程工具包,并且它支持HTTP协议最新的版本和建议。(简单来说就是在java程序中通过HttpClient工具包可以构造http请求,并发送请求)

使用:导入maven坐标(aliyun.oss底层已经使用了这个jar包,所以项目中不用再引入了)


<dependency>
    <groupId>org.apache.httpcomponents</groupId>
    <artifactId>httpclient</artifactId>
    <scope>4.5.13</scope>
</dependency>

核心API:

  •         HttpClient
  •         HttpClients
  •         CloseableHttpClient
  •         httpGet
  •         HttpPost 

2、发送请求步骤:

        1)创建HttpClient对象

        2)创建Http请求对象

        3)调用HttpClient的execute方法请求

 /**
     * 测试通过HttpClient发送Get方式请求
     */
    @Test
    public void testGet() throws Exception{
        //创建HttpClient对象
        CloseableHttpClient httpClient = HttpClients.createDefault();
        //创建请求对象
        HttpGet httpGet = new HttpGet("http://localhost:8080/user/shop/status");
        //发送请求
        CloseableHttpResponse response = httpClient.execute(httpGet);
        //获取服务端返回的状态码
        int statusCode = response.getStatusLine().getStatusCode();
        System.out.println("服务器端返回的状态码为:"+statusCode);

        HttpEntity entity = response.getEntity();
        String body = EntityUtils.toString(entity);
        System.out.println("服务器端返回的数据为:"+body);

        //关闭资源
        response.close();
        httpClient.close();
    }

  /**
     * 测试通过HttpClient发送Post方式请求
     */
    @Test
    public void testPost() throws IOException {
        //创建HttpClient对象
        CloseableHttpClient httpClient = HttpClients.createDefault();
        //创建请求对象
        HttpPost httpPost = new HttpPost("http://localhost:8080/admin/employee/login");

        JSONObject jsonObject = new JSONObject();
        jsonObject.put("username","admin");
        jsonObject.put("password","123456");
        StringEntity entity = new StringEntity(jsonObject.toString());
        //指定请求编码方式
        entity.setContentEncoding("utf-8");
        //指定数据格式
        entity.setContentType("application/json");
        httpPost.setEntity(entity);
        //发送请求
        CloseableHttpResponse response = httpClient.execute(httpPost);
        //解析返回结果
        int statusCode = response.getStatusLine().getStatusCode();
        System.out.println("响应码为:"+statusCode);
        
        HttpEntity entity1 = response.getEntity();
        String body = EntityUtils.toString(entity1);//转为字符串
        System.out.println("响应结果为:"+body);
        //关闭资源
        response.close();
        httpClient.close();
    }

网络编程中的方法:

  • response.getStatusLine() - 获取HTTP响应状态行

  • statusLine.getStatusCode() - 获取状态码(200/404等)

  • response.getEntity() - 获取HTTP响应实体

  • HttpGet (Apache HttpClient) - 表示HTTP GET请求

  • request.getURI() - 获取请求的URI

  • headers.getAllHeaders() - 获取所有响应头

  • ..................

二、微信小程序开发

1、简介

官方文档:微信小程序

开放注册范围:个人、企业、政府等,注:个人无法使用支付功能。

开发支持:开发文档、开发者工具、设计指南、小程序体验DEMO

步骤:注册、小程序信息完善、开发小程序、提交审核和发布

2、准备工作

1)注册小程序:上面的连接,注册

2)完善小程序信息:注册完成后,进行登录,设置小程序信息,设置小程序类目。找到开发与服务->开发管理->开发设置 保存ID以及密钥

3)下载开发者工具

地址:微信开发者工具(稳定版 Stable Build)下载地址与更新日志 | 微信开放文档

可能配置环境变量失败,配置Path:

  1. 右键“此电脑” → 属性 → 高级系统设置 → 环境变量

  2. 系统变量中找到Path点击→编辑→ 新建 → 填写可执行文件所在目录

  3. 点击 确定 保存。

进入应用后,点击右上角详情->本地设置->不校验合法域名.........(不勾选的话发送请求到Tomcat服务器,发送不出去)

3、入门案例

1)目录结构

包含一个描述整体程序的app和多个描述各自页面的page,一个小程序主体部分由三个文件组成,必须放在项目的根目录下,如下:

一个小程序页面由四个文件组成:

三、微信登录

1、微信登陆流程

四、导入商品浏览功能代码

Logo

汇聚全球AI编程工具,助力开发者即刻编程。

更多推荐