Java 通过get post 请求url
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的更多相关文章
- java实现https ssl请求url
import java.io.*;import java.net.*;import java.security.*;import java.security.cert.*;import java.ut ...
- 工作记录之 [ python请求url ] v s [ java请求url ]
背景: 模拟浏览器访问web,发送https请求url,为了实验需求需要获取ipv4数据包 由于不做后续的内容整理(有内部平台分析),故只要写几行代码请求发送https请求url列表中的url即可 开 ...
- Java获取此次请求URL以及服务器根路径的方法
http://www.jb51.net/article/71693.htm ********************************************** 本文介绍了Java获取此次请求 ...
- Java获取项目当前请求的全部URL,Java获取Referer,Java获取完整链接地址URL
Java获取项目当前请求的全部URL,Java获取Referer,Java获取完整链接地址URL >>>>>>>>>>>>> ...
- java跨服务器请求url获得数据
在项目中,有时需要通过请求远程服务器上的url获取数据(前提是程序所在服务器可以和url服务器ping成功), 用java在后台发送请求时,用到了java.net.URL, java.net.URLC ...
- java httpclient发送json 请求 ,go服务端接收
/***java客户端发送http请求*/package com.xx.httptest; /** * Created by yq on 16/6/27. */ import java.io.IOEx ...
- Java中获取完整的url
Java中获得完整的URl字符串 HttpServletRequest httpRequest=(HttpServletRequest)request; String strBackUrl = &qu ...
- 关于cas-client单点登录客户端拦截请求和忽略/排除不需要拦截的请求URL的问题(不需要修改任何代码,只需要一个配置)
前言:今天在网上无意间看到cas单点登录排除请求的问题,发现很多人在讨论如何通过改写AuthenticationFilter类来实现忽略/排除请求URL的功能:突发奇想搜了一下,还真蛮多人都是这么干的 ...
- java 执行https的请求
普通的get和post请求只能执行http的请求,遇到的了https的就歇菜了,需要SSL安全证书处理. 该方法只能用jdk1.7和1.8进行处理,jdk1.6会报Could not generate ...
随机推荐
- 记账本微信小程序开发一
第一,在微信公众平台注册小程序账号并完善相关信息 第二,注册一个微信公众号,找到微信web开发工具并下载适合自己电脑的工具 第三,安装 第四,根据网上教程简单了解了开发工具的使用和布局
- LoggerFactory.getLogger用法
使用指定类初始化日志对象,在日志输出的时候,可以打印出日志信息所在类 如:Logger logger = LoggerFactory.getLogger(com.lz.Test.class); ...
- python基础:re模块匹配时贪婪和非贪婪模式
python贪婪和非贪婪 正则表达式通常用于在文本中查找匹配的字符串.Python里数量词默认是贪婪的(在少数语言里也可能是默认非贪婪),总是尝试匹配尽可能多的字符:非贪婪则相反,总是尝试匹配尽可能少 ...
- Spring Boot 2 (四):使用 Docker 部署 Spring Boot
Spring Boot 2 (四):使用 Docker 部署 Spring Boot Docker 技术发展为微服务落地提供了更加便利的环境,使用 Docker 部署 Spring Boot 其实非常 ...
- python网络编程及高并发问题
面试其他篇 目录: 1.1
- 01:jQuery的下拉选select2插件用法
1.1 select2插件基本使用 1.下载select2插件 1. 下载地址:https://github.com/select2/select2 2.官网地址:https://select2.or ...
- Python3基础 list index 全列表查找与指定索引范围查找
Python : 3.7.0 OS : Ubuntu 18.04.1 LTS IDE : PyCharm 2018.2.4 Conda ...
- 如何在andorid native layer中加log function.【转】
本文转载自:https://blog.csdn.net/powq2009/article/details/39667105 在开发Android一些应用或是链接库, 在程序代码中埋一些log是一定有需 ...
- POP-OOP-SOP-COP-SOA-AOP
一.面向过程 二.面向对象 三.面向服务 四.补充 五.总结: 英文及缩写: 面向过程:procedure oriented programming POP 面向对象:object oriented ...
- tp框架中的一些疑点知识-5
关于vim中的缓存区的前后bp和bn的界定 通过命令ls可以看到 缓存区的 排序. 最开始打开的文件排在最上面, 序号最小. 那么它们就是 更 前 的缓冲区. 序号更前的用bp, 序号靠后的用bn. ...