怎样在微信微信公众平台上传照片片

微信JSSDK如何上传图片文件
前不久微信公开了一些接口,其中有一个uploadImage接口用于上传图片,一般和chooseImage接口配合使用。先调用chooseImage接口让用户选择一张或者多张图片,用户选择完毕后微信会返回被选中图片的id,再把图片id传给uploadImage接口上传图片。
最近做的一个项目,刚好用到了JSSDK,把用到的东西整理下。
先附上微信开发者文档链接:微信开发者文档
主要用到了:
引入JS文件
在需要调用JS接口的页面引入如下JS文件,(支持https):http://res./open/js/jweixin-1.0.0.js
我们需要获取微信js-sdk参数
&* 获取access_token
&* @param appid
&* @param appsecret
&* @return
public static WxAccessToken getAccessToken() {
&WxAccessToken accessToken =
&String requestUrl = access_token_url.replace(&APPID&, Setting.getSetting(&WX_PL_APP_ID&)).replace(
&& &APPSECRET&, Setting.getSetting(&APP_SECRET&));
&JSONObject jsonObject = httpRequest(requestUrl, &GET&, null);
&// 如果请求成功
&if (null != jsonObject) {
&& accessToken = new WxAccessToken();
&& accessToken.setToken(jsonObject.getString(&access_token&));
&& accessToken.setExpiresIn(jsonObject.getInt(&expires_in&));
& } catch (JSONException e) {
&& accessToken =
&& // 获取token失败
&& log.error(&获取token失败 errcode:{} errmsg:{}&,
&&&& jsonObject.getInt(&errcode&),
&&&& jsonObject.getString(&errmsg&));
&return accessT
public static String jsapiTicket = &https://api./cgi-bin/ticket/getticket?access_token=ACCESS_TOKEN&type=jsapi&;
&* 获取JsTicket
&* @param accessToken
&*&& accessToken
&* @return
public static WxJsTicket getJsTicket(String accessToken) {
&WxJsTicket jsTicket =
&String url = jsapiTicket.replaceAll(&ACCESS_TOKEN&, accessToken);
&JSONObject jsonObject = httpRequest(url, &GET&, null);
&// 如果请求成功
&if (null != jsonObject) {
&& jsTicket = new WxJsTicket();
&& jsTicket.setTicket(jsonObject.getString(&ticket&));
&& jsTicket.setExpiresIn(jsonObject.getInt(&expires_in&));
& } catch (JSONException e) {
&& jsTicket =
&& // 获取token失败
&& log.error(&获取jsapiTicket失败 errcode:{} errmsg:{}&,
&&&& jsonObject.getInt(&errcode&),
&&&& jsonObject.getString(&errmsg&));
&return jsT
需要注意接口的调用次数是有限制的,需要控制好。
页面的配置
wx.config({
& debug: false, // 开启调试模式,调用的所有api的返回值会在客户端alert出来,若要查看传入的参数,可以在pc端打开,参数信息会通过log打出,仅在pc端时才会打樱
& appId: &$!{wxsign.get('appId')}&, // 必填,公众号的唯一标识
& timestamp: &$!{wxsign.get('timeStamp')}&, // 必填,生成签名的时间戳
& nonceStr: &$!{wxsign.get('nonceStr')}&, // 必填,生成签名的随机串
& signature: &$!{wxsign.get('signature')}&,// 必填,签名,见附录1
& jsApiList: ['checkJsApi',
&&&& 'chooseImage',
&&&& 'previewImage',
&&&& 'uploadImage'] // 必填,需要使用的JS接口列表,所有JS接口列表见附录2
&var images = {
&localId: [],
&serverId: []
拍照或从手机相册中选图接口
wx.chooseImage({
&count: 1, // 默认9
&sizeType: ['original', 'compressed'], // 可以指定是原图还是压缩图,默认二者都有
&sourceType: ['album', 'camera'], // 可以指定来源是相册还是相机,默认二者都有
&success: function (res) {
& var localIds = res.localI // 返回选定照片的本地ID列表,localId可以作为img标签的src属性显示图片
上传图片接口
wx.uploadImage({
&localId: '', // 需要上传的图片的本地ID,由chooseImage接口获得
&isShowProgressTips: 1, // 默认为1,显示进度提示
&success: function (res) {
& var serverId = res.serverId; // 返回图片的服务器端ID
微信返回的serverid我们需要通过微信api获取真实的图片二进制数据。
&* 获取媒体文件
&* @param accessToken
&*&& 接口访问凭证
&* @param media_id
&*&& 媒体文件id
public static String downloadMedia(String mediaId,HttpServletRequest request) { [1]&&&
【声明】:黑吧安全网()登载此文出于传递更多信息之目的,并不代表本站赞同其观点和对其真实性负责,仅适于网络安全技术爱好者学习研究使用,学习中请遵循国家相关法律法规。如有问题请联系我们,联系邮箱,我们会在最短的时间内进行处理。
上一篇:【】【】播放列表加载中...
正在载入...
分享视频:
嵌入代码:
拍下二维码,随时随地看视频
如何把电脑上的图片文件传到手机微信上
上 传 者:
内容介绍:
如何把电脑上的图片文件传到手机微信上
Channel Me 精选
我来说点啥
版权所有 CopyRight
| 京网文[0号 |
| 京公网安备:
互联网药品信息服务资格证:(京)-非经营性- | 广播电视节目制作经营许可证:(京)字第403号
<img src="" width="34" height="34"/>
<img src=""/>
<li data-vid="">
<img src=""/><i data-vid="" class="ckl_plays">
<img width="132" height="99" src=""/>
在线人数:
<li data-vid="">
<img src=""/><i data-vid="" class="ckl_plays">
<img src="///img/blank.png" data-src=""/>
<img src="///img/blank.png" data-src="http://"/>
<li data-vid="" class="cfix">
src="///img/blank.png" data-src=""/>
<i data-vid="" class="ckl_plays">
<li data-vid="" class="cfix">
src="///img/blank.png" data-src=""/><i data-vid="" class="ckl_plays">
没有数据!
{upload_level_name}
粉丝 {fans_count}
{video_count}
{description}今日论坛第 1 个签到,每日签到可得财富值+2,连续5天签到后再连续签到则每日可得财富值
+4,记得每天都来签到哦~
上一主题:
下一主题:
查看: 76962 | 回复: 10
微信朋友圈,怎样才能上传图片 不降低像素?
财富值 124
交易信用 0
积分/帖子:93
连续签到天数:0
全部签到天数:0
注册时间:
手机型号:
状态: 离线
微信朋友圈,怎样才能上传图片 不降低像素?
如题 3Q& && & 还有怎样接收彩信?
UID 5751911
交易信用 0
积分/帖子:97
连续签到天数:0
全部签到天数:0
注册时间:
手机型号:
状态: 离线
选图的时候,往下拉,有个原图片发送,就不会降低像素了,但是流量会很大。无线无视
财富值 124
交易信用 0
积分/帖子:93
连续签到天数:0
全部签到天数:0
注册时间:
手机型号:
状态: 离线
完全不行,拉下去根本没有 原图????????????
财富值 124
交易信用 0
积分/帖子:93
连续签到天数:0
全部签到天数:0
注册时间:
手机型号:
状态: 离线
回复 #2 darkvk 的帖子
完全不行,拉下去 没有原图, 你自己试过 可行吗?
财富值 6365
交易信用 0
积分/帖子:2872
连续签到天数:1
全部签到天数:980
注册时间:
手机型号:
NOKIA Lumia928
来自:山东
状态: 离线
微信都是压缩过的
直接邮箱就行了
微信可以直接打开
财富值 124
交易信用 0
积分/帖子:93
连续签到天数:0
全部签到天数:0
注册时间:
手机型号:
状态: 离线
回复 #5 zlsxl 的帖子
你的意思是&&微信发的图 都不可能是原图吧???&&悲催, 哥要的就是,能在 微信朋友圈&&发原图,哥无限流量卡。郁闷,
UID 7217666
财富值 3533
交易信用 0
座^王X王竹如山倒~~
积分/帖子:4687
连续签到天数:1
全部签到天数:17
注册时间:
手机型号:
Lumia 920-HK
来自:Cyprus
状态: 离线
内容和微信开发组说
screen.width*0.7) {this.resized= this.width=screen.width*0.7; this.alt='Click here to open new window\nCTRL+Mouse wheel to zoom in/out';}" onmouseover="if(this.width>screen.width*0.7) {this.resized= this.width=screen.width*0.7; this.style.cursor='hand'; this.alt='Click here to open new window\nCTRL+Mouse wheel to zoom in/out';}" onclick="if(!this.resized) {} else {window.open(this.src);}" onmousewheel="return imgzoom(this);" alt="" /> R 兵 Y 者 皆
列 在 前& &破&&&&!!!&&
财富值 144
交易信用 0
积分/帖子:128
连续签到天数:1
全部签到天数:7
注册时间:
手机型号:
状态: 离线
QQ空间有选。就是在wifi的情况下是高清。蜂窝数据的话就压缩了。
尝试下在wifi传图看看
交易信用 0
积分/帖子:1
连续签到天数:0
全部签到天数:0
注册时间:
手机型号:
状态: 离线
回复 #5 zlsxl 的帖子
怎么通过邮箱发微信照片呢 具体步骤是怎样 谢谢啦
财富值 893
交易信用 0
积分/帖子:254
连续签到天数:1
全部签到天数:221
注册时间:
手机型号:
状态: 离线
原图发送,图像一样被压缩,和从我的相差上看的差远了。
UID 5068133
财富值 304
交易信用 0
积分/帖子:327
连续签到天数:0
全部签到天数:0
注册时间:
手机型号:
来自:山东青岛
状态: 离线
估计不能,因为你可能无线传,但是别人看你图可能需要数据流量,这样肯定把别人害死了
微信扫一扫关注dospy智能手机微信怎么上传高清晰大图 微信发图片照片不清晰模糊的解决方法
查看: 24284|
摘要: 上传的原始照片、分辨率越高、文件越大、压缩越狠。非针对P7。你自己拿个单反机拍一张5-10M大的JPG上传一下、结果一样狠。微信APP上可能有预设、啥分辨率就自动改啥分辨率、多大就自动压缩啥比例。然后越是高清大图
上传的原始照片、分辨率越高、文件越大、压缩越狠。非针对P7。你自己拿个单反机拍一张5-10M大的JPG上传一下、结果一样狠。微信APP上可能有预设、啥分辨率就自动改啥分辨率、多大就自动压缩啥比例。然后越是高清大图越倒霉(除非你选择原图上传)缩图以后上传小图。清晰度你自己控制。不要太大、分辨率尽量控制在标准分辨率以内、就不容易被微信给无节操压缩。我原来以为压缩是在服务器端实现。后来发现上传流量不对,所以就知道了是在APP端实现。另外有人测试,同一张高清照片通过IP和通过ANDROID上传,结果照片传上去以后ANDROID上传的朋友圈照片画质更差。说明负责检索照片尺寸、并进行压缩的、是客户端APP干的事儿。另外,甭管HTC,三星,只要是同一个版本的APP,上传的图像品质应该是完全一样的。任何厂家不可能对自己ROM做个特别设置、劣化这个应用在本手机上的使用体验。这恰恰说明了跟微信图片压缩有关系。负责图片压缩的,是微信APP而IOS上的WECHAT APP、和ANDROID上的WEIXIN APP、工作方式是不同的、压缩算法可能相同但是对尺寸的判断肯定是不同的。压缩率也可能不同。导致不同的结果。要证明与APP有关,最简单的方法就是用你的方法,同一张单反照片通过不同APP上传。你会发现,多数同一版本的ANDROID上的微信出来的是一类画质。IOS上WECHAT出来的又是一类画质。原因是因为IP早期主要卖点是拍照功能。所以WECHAT就对照片压缩的压缩率、原始照片的尺寸要求都放宽了。而ANDROID平台存在很多廉价机型、原始画质多数不高、甚至用户反而很挑剔上传流量(买得起IP的基本上不太在意流量)、所以就把压缩率、和允许的原始画幅尺寸都做了较为苛刻的要求。没有具体这俩应用的参数。我们做个比方如下:X软件公司开发了Y软件的I版本和Y软件的A版本。YI对图片压缩是这样的:凡是宽度或长度大于1280的一律压缩到1280,JPEG压缩率为80%YA对图片的压缩是这样的:凡是宽度或长度大于800的一律压缩到800,JPEG压缩率为70%于是,通过YI和YA分别上传同一张分辨率长宽是的照片的结果是:YI上传了一张%jpeg压缩率的图片,图片大小100KYA上传了一张800*450@70%jpeg压缩率的图片,图片大小是20KX软件为什么这么做?因为,买I平台的人手机都花了5000,当然“应该”不在乎每张照片花0.3分钱去上传。而买A平台的人既有花5000的也有花500的、甚至花500的可能还占大多数、他们很在乎每张照片上传是花了0.3分钱、还是0.06分钱上传。比较靠谱的回答是这个:是腾讯的问题,所有安卓系统都是这样的,不过现在的4.3系统会比老的还要模糊,iphone的就没这个问题了,安卓上传的图片是30kb左右,iphone的是60kb左右……可想而知啦
上一篇:下一篇:
discuz x3.2 Comsenz Inc.

我要回帖

更多关于 微信上传照片模糊 的文章

 

随机推荐