1️⃣.已获取小程序的access_token 为例,通过Get请求url

  import com.alibaba.fastjson.JSONObject;

  String wechatUrl = "https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid={0}&secret={1}";

 String appId = "xxxx";
String secret = "xxxxx"; String getUrl = MessageFormat.format(wechatUrl, appId, secret); URL url = new URL(urlStr);
JSONObject jsonObject;
try (InputStream inputStream = url.openStream()) {
jsonObject = JSONObject.parseObject(IOUtils.toString(inputStream));
}
if (jsonObject.containsKey("errmsg")) {
throw new LobsterException("获取token,原因:" + jsonObject.getString("errmsg"));
}
return jsonObject.getString("access_token");

2️⃣.已获取小程序码为例,通过Post请求url   也可以参考https://www.cnblogs.com/bchange/p/9156178.html

1.先设置小程序码参数

 package com.ieou.lobster.dto;

 public class MiniProgramsCode {

     private String scene;
private String page = "pages/shop/shop";
private int width = 300;
private Boolean auto_color;
private Object line_color; public String getScene() {
return scene;
} public void setScene(String scene) {
this.scene = scene;
} public String getPage() {
return page;
} public void setPage(String page) {
this.page = page;
} public int getWidth() {
return width;
} public void setWidth(int width) {
this.width = width;
} public Boolean getAuto_color() {
return auto_color;
} public void setAuto_color(Boolean auto_color) {
this.auto_color = auto_color;
} public Object getLine_color() {
return line_color;
} public void setLine_color(Object line_color) {
this.line_color = line_color;
}
}

2.对URL进行Post请求

 import org.apache.http.HttpResponse;
import org.apache.http.client.methods.HttpPost;
import org.apache.http.entity.StringEntity;
import org.apache.http.impl.client.CloseableHttpClient;
import org.apache.http.impl.client.HttpClientBuilder; public String getMiniProgramsQRCode(Integer restaurantId, String tableNumber, Integer tableNumberId) throws Exception { String accessToken = getMiniProgramsAccessToken(); MiniProgramsCode miniProgramsCode = new MiniProgramsCode(); String str = restaurantId.toString() + "*" + tableNumberId.toString() + "*" + tableNumber;
miniProgramsCode.setScene(str);
miniProgramsCode.setAuto_color(true);
//设置颜色
MiniProgramsCodeRgb miniProgramsCodeRgb = new MiniProgramsCodeRgb();
miniProgramsCode.setLine_color(miniProgramsCodeRgb); CloseableHttpClient build = HttpClientBuilder.create().build();
String postUrl = "https://api.weixin.qq.com/wxa/getwxacodeunlimit?access_token=" + accessToken;
HttpPost httpPost = new HttpPost(postUrl);
httpPost.addHeader(HTTP.CONTENT_TYPE, "application/json");
String jsonStr = JSONObject.toJSONString(miniProgramsCode);
StringEntity se = new StringEntity(jsonStr,"UTF-8"); // 中文乱码解决
se.setContentType("text/json");
se.setContentEncoding(new BasicHeader(HTTP.CONTENT_TYPE, "application/json"));
httpPost.setEntity(se);
HttpResponse httpResponse = build.execute(httpPost);
      if (httpResponse.getStatusLine().getStatusCode() == HttpStatus.SC_OK) {
       String result = EntityUtils.toString(httpResponse.getEntity());// 返回json格式:
       JSONObject response = JSON.parseObject(result);
        }
         InputStream inputStream = httpResponse.getEntity().getContent();   //返回流格式
}

Java 通过get post 请求url的更多相关文章

  1. java实现https ssl请求url

    import java.io.*;import java.net.*;import java.security.*;import java.security.cert.*;import java.ut ...

  2. 工作记录之 [ python请求url ] v s [ java请求url ]

    背景: 模拟浏览器访问web,发送https请求url,为了实验需求需要获取ipv4数据包 由于不做后续的内容整理(有内部平台分析),故只要写几行代码请求发送https请求url列表中的url即可 开 ...

  3. Java获取此次请求URL以及服务器根路径的方法

    http://www.jb51.net/article/71693.htm ********************************************** 本文介绍了Java获取此次请求 ...

  4. Java获取项目当前请求的全部URL,Java获取Referer,Java获取完整链接地址URL

    Java获取项目当前请求的全部URL,Java获取Referer,Java获取完整链接地址URL >>>>>>>>>>>>> ...

  5. java跨服务器请求url获得数据

    在项目中,有时需要通过请求远程服务器上的url获取数据(前提是程序所在服务器可以和url服务器ping成功), 用java在后台发送请求时,用到了java.net.URL, java.net.URLC ...

  6. java httpclient发送json 请求 ,go服务端接收

    /***java客户端发送http请求*/package com.xx.httptest; /** * Created by yq on 16/6/27. */ import java.io.IOEx ...

  7. Java中获取完整的url

    Java中获得完整的URl字符串 HttpServletRequest httpRequest=(HttpServletRequest)request; String strBackUrl = &qu ...

  8. 关于cas-client单点登录客户端拦截请求和忽略/排除不需要拦截的请求URL的问题(不需要修改任何代码,只需要一个配置)

    前言:今天在网上无意间看到cas单点登录排除请求的问题,发现很多人在讨论如何通过改写AuthenticationFilter类来实现忽略/排除请求URL的功能:突发奇想搜了一下,还真蛮多人都是这么干的 ...

  9. java 执行https的请求

    普通的get和post请求只能执行http的请求,遇到的了https的就歇菜了,需要SSL安全证书处理. 该方法只能用jdk1.7和1.8进行处理,jdk1.6会报Could not generate ...

随机推荐

  1. .net core创建项目(指令方式)

    所谓的指令创建项目,就是不用再已安装的VS2015的环境下或者VS Core下创建,直接通过DOS指令创建也是OK的. 1.找到你所准备保存项目的项目文件夹(你也可以到某个目录用指令创建项目文件夹[  ...

  2. jquery操作节点

    var v= $("input[type='checkbox'][name='ids']:checked").closest('tr').find('td:eq(2)').map( ...

  3. 在使用springMVC时,页面报的404异常

    HTTP Status – Not Found Type Status Report Message /WEB-INF/test/hello.jsp Description The origin se ...

  4. thinkphp 随笔

     'TMPL_CACHE_ON' => false,//禁止模板编译缓存 'HTML_CACHE_ON' => false,//禁止静态缓存 

  5. 获取微信access_token

    /** * 获取微信access_token * @return mixed */function get_access_token() { $appId = C('APPID'); $secret ...

  6. PXC备份方式总结

    记录一下. 1.mysqldump数据导出 关于GTID: GTID是MySQL5.6以后,加入了全局事务 ID (GTID) 来强化数据库的主备一致性,故障恢复,以及容错能力. A global t ...

  7. php 版本号 整数化 mysql存储入库 比较大小【版本处理类,提供版本与数字互相转换】

    下载地址:https://download.csdn.net/download/a724008158/10659015

  8. P2765 魔术球问题

    P2765 魔术球问题 贪心模拟就可以过.........好像和dinic没啥关系   找找规律发现可以贪心放.n又灰常小. 设答案=m 你可以$O(mn)$直接模拟过去 闲的慌得话可以像我用个$se ...

  9. PyCharm 设置护眼背景色

    PyCharm 设置护眼背景色 一.方法 File -> Seting -> Editor -> Color Scheme -> General -> Text -> ...

  10. devexpress 10.0升级为 15