现在做微信订阅号、微信公众号,微信企业号都需要开发者给微信服务器发送get或post请求。具体发送get或post请求源码如下:

package com.ciji.utils;import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.PrintWriter;
import java.net.URL;
import java.net.URLConnection;
import java.util.List;
import java.util.Map;public class HttpRequestUtils {/*** 向指定URL发送GET方法的请求* * @param url*            发送请求的URL* @param param*            请求参数,请求参数应该是 name1=value1&name2=value2 的形式。* @return URL 所代表远程资源的响应结果*/public static String sendGet(String url, String param) {String result = "";BufferedReader in = null;try {String urlNameString = url + "?" + param;URL realUrl = new URL(urlNameString);// 打开和URL之间的连接URLConnection connection = realUrl.openConnection();// 设置通用的请求属性connection.setRequestProperty("accept", "*/*");connection.setRequestProperty("connection", "Keep-Alive");connection.setRequestProperty("user-agent","Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1;SV1)");// 建立实际的连接connection.connect();// 获取所有响应头字段Map<String, List<String>> map = connection.getHeaderFields();// 遍历所有的响应头字段for (String key : map.keySet()) {System.out.println(key + "--->" + map.get(key));}// 定义 BufferedReader输入流来读取URL的响应in = new BufferedReader(new InputStreamReader(connection.getInputStream()));String line;while ((line = in.readLine()) != null) {result += line;}} catch (Exception e) {System.out.println("发送GET请求出现异常!" + e);e.printStackTrace();}// 使用finally块来关闭输入流finally {try {if (in != null) {in.close();}} catch (Exception e2) {e2.printStackTrace();}}return result;}/*** 向指定 URL 发送POST方法的请求* * @param url*            发送请求的 URL* @param param*            请求参数,请求参数应该是 name1=value1&name2=value2 的形式。* @return 所代表远程资源的响应结果*/public static String sendPost(String url, String param) {PrintWriter out = null;BufferedReader in = null;String result = "";try {URL realUrl = new URL(url);// 打开和URL之间的连接URLConnection conn = realUrl.openConnection();// 设置通用的请求属性conn.setRequestProperty("accept", "*/*");conn.setRequestProperty("connection", "Keep-Alive");conn.setRequestProperty("user-agent","Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1;SV1)");// 发送POST请求必须设置如下两行conn.setDoOutput(true);conn.setDoInput(true);// 获取URLConnection对象对应的输出流out = new PrintWriter(conn.getOutputStream());// 发送请求参数out.print(param);// flush输出流的缓冲out.flush();// 定义BufferedReader输入流来读取URL的响应in = new BufferedReader(new InputStreamReader(conn.getInputStream()));String line;while ((line = in.readLine()) != null) {result += line;}} catch (Exception e) {System.out.println("发送 POST 请求出现异常!"+e);e.printStackTrace();}//使用finally块来关闭输出流、输入流finally{try{if(out!=null){out.close();}if(in!=null){in.close();}}catch(IOException ex){ex.printStackTrace();}}return result;}
}

junit的测试代码:

package com.ciji.test;import org.junit.Test;import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONObject;
import com.ciji.utils.HttpRequestUtils;public class WEIXINgetUserInfo {//得到微信token的urlprivate String GETTOKKEN_URL = "https://qyapi.weixin.qq.com/cgi-bin/gettoken";//参数(企业号id)private String corpid = "替换成企业号Id ";//参数(管理组凭证密钥)private String corpsecret = "替换成管理组凭证密钥";@Testpublic void getUserInfos() {String param = "corpid=" + corpid + "&corpsecret=" + corpsecret;String tokenResultJSON = HttpRequestUtils.sendGet(GETTOKKEN_URL, param);/**使用阿里巴巴的jar解析,据网上的json解析比较,常用json解析性能和api好用的关系是:* fastjson > jackjson > Gjson > json-lib (没有亲自测过)*/JSONObject token_json = JSON.parseObject(tokenResultJSON);String access_token = (String) token_json.get("access_token");System.out.println(access_token +"access_token");}
}

到此就可以通过java给微信发送get或post请求,然后获得access_token就可以进行后续操作了。

java给微信发送get和post请求完整源码下载地址(不要积分):http://download.csdn.net/download/zl544434558/9104389

java给微信发送get和post请求相关推荐

  1. Java实现HttpClient发送GET、POST请求(https、http)

    原文链接:https://www.cnblogs.com/klslb/p/9121276.html 1.maven <dependency><groupId>org.apach ...

  2. java集成微信发送模板消息

    登录微信公众平台 地址 : https://mp.weixin.qq.com/debug/cgi-bin/sandboxinfo?action=showinfo&t=sandbox/index ...

  3. java企业微信发送语言_java微信企业号开发之发送消息(文本、图片、语音)

    上篇文章介绍了开启回调模式,开始回调模式后我们就要实现聊天功能了.平时使用微信聊天可以发送文本消息.语音.图片.视频等,这里只实现了其中的一些功能和大家分享. 一.与微信企业号建立连接1.企业应用调用 ...

  4. 微信开发系列之十 - 在SAP C4C接收微信发送过来的服务请求回应

    文章系列目录 Wechat development series 1 – setup your development environment Wechat development series 2 ...

  5. 模拟微信发送文件给好友/群

    JAVA模拟微信发送文件给好友/群 通过google开发者模式抓取https://file2.wx.qq.com/cgi-bin/mmwebwx-bin/webwxuploadmedia?f=json ...

  6. Java实现微信公众号模板消息推送给用户

    创建消息模板实体对象 package com.htdz.ydkx.wxModelMsg.entity;public class Content {private String value;//消息内容 ...

  7. JAVA通过HTTPS发送POST请求的方法

    因为调用一个外部接口,会用到POST请求,而且还是Https的,但是由于之前学习的时候没有用到,所以研究了很久才弄懂了怎么去用JAVA实现Https发送post请求 使用的是HttpsURLConne ...

  8. java访问微信接口发送消息

    最近在开发activiti流程的时候有个需求:流程到达每个审批节点后,需要向该节点的审批人发送一个消息,提示有审批需要处理. 参考了一下微信的开发者文档和网络上的一些技术博客,现在记录一下.以便后续继 ...

  9. 利用Java实现微信公众号发送信息提醒通知

    项目场景: 项目场景:利用Java实现微信公众号发送信息提醒通知! Java实现方法: 1.首先创建实现公众号消息发送的方法: public ReturnDO<String> sendTe ...

最新文章

  1. fsum函数测试以及分析
  2. comsol积分函数_怎样在COMSOL中实现时间和空间积分
  3. chrome调试找不到 XXXX.min.map 原因及解决办法
  4. OpenCASCADE:可视化简介
  5. Git版本管理工具的使用
  6. PHP Fatal error: Uncaught think\\exception\\ErrorException: error_log相关解决方法
  7. Linux内核驱动调试,Linux内核设备驱动之内核的调试技术笔记整理
  8. find_package()的查找*.cmake的顺序
  9. 如何对一个变量数据进行正则判定_数值数据与数值数据的分析
  10. 冬雷快递单打印软件anyPrint
  11. 机器视觉全球顶级实验室
  12. 美团无人配送部总经理夏华夏演讲:从技术细节看美团架构
  13. 读书笔记之一平米健身:硬派健身
  14. Interval数据类型
  15. 利用poi读取word模板文件生成新的word文档
  16. 自动化之旅--Appium
  17. cadence allegro 17.2中的正负片
  18. SFD:今年怎么了?
  19. 程序员工具网站(比较有意思)
  20. R语言使用car包的leveneTest函数实现非参数的方差齐性检验、检验各分组方差是否相同

热门文章

  1. 苹果4s手机装 java微信_苹果4s版本过低不能下载微信怎么安装旧版本的
  2. MySQL必知必会(1)
  3. 元宇宙的未来:以上帝视角掌控一切,你准备好了吗?
  4. 著名设计师的标志(Logo)设计观 1
  5. 一维数组(简单摇骰子小游戏)
  6. 前端一键切换深色模式
  7. python银行利息问题_(完整版)存款利率问题应用题
  8. 招聘信息薪资范围是12-20K,能否要20K的薪资?
  9. 数数小绵羊(四刷) kkmd66
  10. ssr pac_全新回馈丨购金币三日礼,获取主线SSR羁绊