• 在刚开始写关于微信jsapi的时候可以说是一窍不通
  • 资源又少于是我果断上传微博希望对大家开发微信有帮助
  • 同时也把东西写到博客里没事就多看看也好

微信开发API文档是必看的

在api文档里面我们可以看到很多内容,然后需要我们去理解点击进微信硬件平台api[http://iot.weixin.qq.com/wiki/new/index.html?page=4-7.

页面代码块

代码块语法遵循标准markdown代码:

<html>
<script type="text/javascript"
src="${pageContext.request.contextPath}/js/jquery-1.2.6.pack.js">
</script>
<script src="http://res.wx.qq.com/open/js/jweixin-1.0.0.js">
</script><div id="uploadImage"><img  id="zhuye" src="PersonImg/${personImg}"/><div><font>点击更换主页</font></div>
</div><script type="text/javascript">
//config接口权限配置 这里在文档是有清晰的解不知道的可以看我的第一篇博客wx.config( {
//都是从后台传过来的值
beta : true, // 开启内测接口调用,注入wx.invoke方法必填
debug : true, // 开启调试模式 必填
appId : '${config.appId}', // 第三方app唯一标识必填
timestamp : '${config.timestamp}', // 签名的时间戳必填
nonceStr : '${config.nonce}', // 生成签名的随机串必填
signature : '${config.signature}',//签名 必填
jsApiList : [//添加使用的函数
'chooseImage', 'uploadImage', 'downloadImage' ]
})//ready权限验证
wx.ready(function () {// 5 图片接口// 5.1 拍照、本地选图var images = {localId: [],serverId: []};// 5.3 上传图片document.querySelector('#uploadImage').onclick = function () {//选择图片wx.chooseImage({success: function (res) {images.localId = res.localIds;if (res.localIds.length != 1) {alert('只能上传一张图片');return;}else{upload();   }}});}function upload() {//上传图片到自己服务器wx.uploadImage({localId: images.localId[0],success: function (res) {wxImgCallback(res.serverId);},fail: function (res) {alert('上传失败');}});}function wxImgCallback(serverId) {//将serverId传给wx_upload.php的upload方法var url = '${pageContext.request.contextPath}/bbs.do?method=uploadHeadImg';$.post(url,{serverIds : serverId}, function(data){if(data=="true"){document.getElementById("zhuye").src=images.localId[0];}});
}
});</script>
</html>

//修改数据库的个人主页背景名称
String imgNickname=path.substring(path.indexOf(“/”)+1,path.length());
usersService.updateUpersonImg(imgNickname,userId);
这里如果没有到数据库可以不写,隐藏即可

后台代码块

代码块语法遵循标准markdown代码:

    /*** * 个人主页更换* @return*/@RequestMapping(params="method=uploadHeadImg")public String uploadHeadImg(HttpServletResponse response){//得到用户名String userId=(String) request.getSession().getAttribute("userId");//得到页面传来的serverIdsString serverId=request.getParameter("serverIds");// 要存在你服务器哪个位置?String Imgpath= request.getSession().getServletContext().getRealPath("PersonImg");//上传的图片以id命名String path=comradeService.downloadMedia(serverId, Imgpath,userId);//修改数据库的个人主页背景名称String imgNickname=path.substring(path.indexOf("/")+1,path.length());usersService.updateUpersonImg(imgNickname,userId);response.setContentType("text/html;charset=utf-8");try {if(path!=null && path!=""){response.getWriter().print("true");}else {response.getWriter().print("false");}} catch (IOException e) {// TODO Auto-generated catch blocke.printStackTrace();}return null;
}       /** * 获取媒体文件 * @param accessToken 接口访问凭证 * @param media_id 媒体文件id * @param savePath 文件在服务器上的存储路径 * */  public static String downloadMedia(String mediaId, String savePath,String userId) {  String struts=HttpUtil.getImgPathStuts(mediaId,savePath,userId);return struts;}  /*** * @param mediaId 多媒体在微信服务器的地址* @param savePath  保存的地址* @param userId    用户关注公众号唯一ID* @return*/public static String getImgPathStuts(String mediaId, String savePath,String userId) {//下载图片保存到哪里,图片名字什么String imgPath = null;  // 拼接请求地址  String requestUrl = MpApi.UploadMediaUrl;  //得到ACCESS_TOKEN 这里根据你怎么自己项目的ACCESS_TOKEN 就行了requestUrl = requestUrl.replace("ACCESS_TOKEN", AccessTokenUtil.getTokenStr()).replace("MEDIA_ID", mediaId);  try {  URL url = new URL(requestUrl);  HttpURLConnection conn = (HttpURLConnection) url.openConnection();  conn.setDoInput(true);  conn.setRequestMethod("GET");  if (!savePath.endsWith("/")) {  savePath += "/";  }  // 将用户关注者id作为文件名  imgPath = savePath +userId+".png";  BufferedInputStream bis = new BufferedInputStream(conn.getInputStream());  FileOutputStream fos = new FileOutputStream(new File(imgPath));  byte[] buf = new byte[8096];  int size = 0;  while ((size = bis.read(buf)) != -1)  fos.write(buf, 0, size);  fos.close();  bis.close();  conn.disconnect();  String info = String.format("下载媒体文件成功,filePath=" + imgPath);    } catch (Exception e) {  imgPath = null;  String error = String.format("下载媒体文件失败:%s", e);  }  return imgPath;}//多媒体下载接口public final static String UploadMediaUrl="http://file.api.weixin.qq.com/cgi-bin/media/get?access_token=ACCESS_TOKEN&media_id=MEDIA_ID";

不懂可以去看文档或者找其他资料,欢迎入群(93472007)

目录

[TOC]来生成目录:

  • 页面代码块
  • 后台代码块
  • 目录

java微信开发之--更换背景图片相关推荐

  1. java微信开发API解析(二)-获取消息和回复消息

    java微信开发API解析(二)-获取消息和回复消息 说明 * 本演示样例依据微信开发文档:http://mp.weixin.qq.com/wiki/home/index.html最新版(4/3/20 ...

  2. java微信开发-消息接收和自动回复

    0.前提条件 1.需要一个公众平台帐号(测试帐号也可以) 2.平台需要被人关注 1.导入jar commons-beanutils-1.8.0.jar commons-collections-3.1. ...

  3. Java微信开发_00_资源汇总贴

    1.微信公众平台技术文档(https://mp.weixin.qq.com/wiki?t=resource/res_main&id=mp1445241432) 2.微信企业号开发接口文档(ht ...

  4. Java微信开发入门

    前言: 1.先简单介绍一下微信公众号的开发者模式和编辑模式,玩过微信公众号的同志都知道,在微信公众号后台功能栏里面可以编辑消息自动回复,关键字回复,自定义菜单等功能,这些都是在视图页面下编辑的,叫编辑 ...

  5. 1、JAVA微信开发-微商城_O2O微门店SAAS系统开发

    博客只用于记录,不好勿喷! 已经很多年不曾发表博客,很多年不曾玩CSDN了,有的时候翻看自己的博客,以前的认知跟现有的认知是不同的,有些博客有误导,有误导的地方勿喷,谢谢. 最近这段时间会比较充足,主 ...

  6. java微信开发平台_Java微信公众平台开发(1) 接入微信公众平台

    前面几篇文章一直都在说微信公众平台的开发准备工作,那么从这篇开始我们就将正式的进入JAVA微信公众平台开发的整个流程,那么这篇我们开始聊聊如何将我们的服务端和微信公众平台对接! (一)接入流程解析 通 ...

  7. JAVA微信开发-新手接入指南

    相信很多人对微信开发已经不那么陌生,我也是从一个微信开发的菜鸟经过各种问题的折磨,然后去搜索引擎搜索各种文章阅读,但是基本都是零散的资料,没有一个统一.系统的阐述微信应用如何开发.作者结合自己的实际开 ...

  8. Java微信开发以及对各种云的评价

    目前一个人用Java开发一个微信的会员系统,开发已经结束,现在进入测试阶段. 有一些时间看看市面上的一些Java的微信开发视频,看了一下北风网的<微信公众平台开发Java版第一季>中的1, ...

  9. java微信开发模板消息接口使用

    微信开发--模板消息接口 http://blog.csdn.net/u010486495/article/details/46985729 微信开发者文档:模板消息接口 模板消息运营规范:http:/ ...

  10. 微信开发api “此图片来自微信公众平台未经允许不可引用”的解决方案

    在使用微信开发api接口接管后, 获取公众号的素材发现图片显示"此图片来自微信公众平台未经允许不可引用" 问题: 方案一(推荐): 在html中的<head>里面添加& ...

最新文章

  1. 使用MQTT.fx接入阿里云物联网平台
  2. 开发物体识别桌、_想用人工智能实现安全风险管控?快来试试EasyMonitor一站式视频监控开发平台...
  3. echarts line 去掉最外围方框_干货 | 关于射频芯片最详细解读
  4. 刚刚,SeetaFace版本升级!新增活体检测等功能
  5. Linux下解决高并发socket最大连接数限制,tcp默认1024个连接
  6. 用GSON 获取JSON数组属性
  7. JS:关于JS字面量及其容易忽略的12个小问题
  8. [poj1325] Machine Schedule (二分图最小点覆盖)
  9. 如何用纯 CSS 创作一个均衡器 loader 动画
  10. USART串口驱动SIM800L或者ESP8266
  11. word打开html是空白,网页复制到Word之后或者出现空白或者格式变乱该怎么办
  12. mysql的索引是什么数据结构_mysql索引的数据结构是什么
  13. 容器化运行wine模拟器制作开源代码索引chm文件
  14. Windows 10 布置IP安全策略
  15. 华为高清会议摄像机预置位的使用方法
  16. 基于JavaSpringboot+vue国风汉服文化交流宣传系统
  17. 国密算法Go语言实现(详解)(九) ——SM2(椭圆曲线公钥密码算法)
  18. 51SCM_AD模块CS5550学习心得
  19. back_inserter的使用
  20. towhee+elasticsearch实现本地以图搜图

热门文章

  1. ps中怎么把人物的腿给p长
  2. 语音识别/合成开源项目
  3. 模板template基础学习
  4. 用户名或密码错误html,用户名或密码错误【解决办法】
  5. 牛顿柯特斯公式及复合形式、龙贝格求积公式,高斯勒让德求积公式
  6. 熊出没机器人光头强_《熊出没》里的温馨时刻,原来光头强和熊大熊二的关系也能这么好...
  7. 莫迪:“智能城市”可协助解决城市化快速扩张挑战
  8. IIS部署添加网站发布网站
  9. ASN.1入门(超详细)
  10. wps自动生成目录总是有正文内容