调用外部接口(调用微信订阅号中接口)

代码中调用微信订阅号中<删除永久素材>接口

https://developers.weixin.qq.com/doc/offiaccount/Asset_Management/Deleting_Permanent_Assets.html

简要说明:

  • 请求方式:post
  • 有传参数,post传参

配置文件:

#删除永久素材
delMaterial=https://api.weixin.qq.com/cgi-bin/material/del_material?access_token=

调用代码:

@ResponseBody
  @RequestMapping(value = "/delMaterial", produces = "text/plain;charset=UTF-8")
  public JSONObject delMaterial(HttpServletRequest request, HttpServletResponse response, HttpSession session
  // @RequestHeader("Authorization") String authToken,
          , String accessToken, String media_id) throws Exception {
      log.debug("*******************删除永久素材***********************");
      // 测试号
      String url = delMaterial + accessToken;
      System.out.println(url);
      JSONObject json = new JSONObject();
      json.put("media_id", media_id);
      String str = postByJson(url, json);
      JSONObject auth = JSONObject.parseObject(str);
      return auth;
  }

代码中调用postByJson方法

public static String postByJson(String url, JSONObject jsonObject) throws ParseException, IOException {
      String body = "";
      // 创建httpclient对象
      CloseableHttpClient client = HttpClients.createDefault();
      // 创建post方式请求对象
      HttpPost httpPost = new HttpPost(url);
      // 装填参数
      StringEntity s = new StringEntity(jsonObject.toString(), "utf-8");
      s.setContentEncoding(new BasicHeader(HTTP.CONTENT_TYPE, "application/json"));
      // 设置参数到请求对象中
      httpPost.setEntity(s);
      System.out.println("请求地址:" + url);
      //System.out.println("请求参数:"+nvps.toString());
      // 设置header信息
      // 指定报文头【Content-type】、【User-Agent】
      // httpPost.setHeader("Content-type", "application/x-www-form-urlencoded");
      httpPost.setHeader("Content-type", "application/json");
      httpPost.setHeader("User-Agent", "Mozilla/4.0 (compatible; MSIE 5.0; Windows NT; DigExt)");
      // 执行请求操作,并拿到结果(同步阻塞)
      CloseableHttpResponse response = client.execute(httpPost);
      // 获取结果实体
      HttpEntity entity = response.getEntity();
      if (entity != null) {
          // 按指定编码转换结果实体为String类型
          body = EntityUtils.toString(entity, "utf-8");
      }
      EntityUtils.consume(entity);
      // 释放链接
      response.close();
      return body;
  }

(当时写的时候,忘记存参考地址了,如果有知道的,谢谢提醒~)

希望可以帮到你(~ ̄▽ ̄)~

加油o(* ̄3 ̄)o


 

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值