信息推送接口(Http请求)

消息推送是很常见,一般都会采用手机短信、邮件、公众号、小程序等各种接口进行实现。
我是在工作过程中需要实现一个公众号的信息推送,网上查阅过资料,其中腾讯信鸽接口很多人使用,网上教学很多,不过用户需求是要有限制条件(连接内网、指定人员且绑定信息),所以采用的是http请求来实现。

在这里我们就介绍一下有关于http请求如何实现消息推送,我也是刚开始接触,就大致说一下:

//在这里map是一个HashMap对象,是根据需求写的,然后转换为json格式
JSONObject jsonobject = new JSONObject(map);
String body = JSON.toJSONString(jsonobject);
//推送地址
String url = "http://***";
//获得Http客户端(相当于一个浏览器)
CloseableHttpClient httpClient = HttpClientBuilder.create().build();
//创建post请求
HttpPost httpPost = new HttpPost(url);
httpPost.setHeader("Content-type","application/json;charset=utf-8");
//这里利用阿里的fastjson,将Object转换为json字符串;
//(需要导入com.alibaba.fastjson.JSON包)
//设置参数(post请求是将参数放在请求体里面传过去的)
httpPost.setEntity(new StringEntity(body, "utf-8"));
//设置超时
RequestConfig requestConfig = RequestConfig.custom()
                    .setConnectTimeout(5000).setConnectionRequestTimeout(1000)
                    .setSocketTimeout(5000).build();
            httpPost.setConfig(requestConfig);
//推送并获取响应
HttpResponse httpResponse = httpClient.execute(httpPost);
if(httpResponse.getStatusLine().getStatusCode() == 200){
       HttpEntity httpEntity = httpResponse.getEntity();
       String responseResult  = EntityUtils.toString(httpEntity);
	   //第一种:直接获取数据方式(转换为JSONObject的字符串)       
       JSONObject jso1 = JSONObject.parseObject(responseResult);
	   String status = (String) jso1.get("status");//可以通过key获取数据,有弊端就是只能获取string,格式转换我就没去细查
	   //第二种:封装成对象获取(GovWebChat是一个pojo,封装着返回的数据,属性名与返回的数据名一样则会赋值即可以形成对象)
	   GovWebChat chat = JSONObject.parseObject(responseResult, GovWebChat.class);
	   String status = chat.getStatus();//通过对象获取数据
}

如果有问题可以评论,Thanks♪(・ω・)ノ

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

谦风(Java)

一起学习,一起进步(✪ω✪)

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

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

打赏作者

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

抵扣说明:

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

余额充值