var title =document.title;
var link ="";
var imgUrl ="<%=SystemManager.systemSetting.getImageRootPath()%><s:property escape="false" value="e.picture"/>";
var appid ="";
var productid =$("#productID").val()+"";
var timestamp ="";
var nonceStr ="";
var signature ="";
var openid ="";
//记录停留时间
$(function() {
//调用后台jssdk验证方法
var _url = "<%=request.getContextPath()%>/wxaction/jsSDKPackage.html?productid="+productid+"&source=wx&jssdkurl="+location.href;
//alert(_url);
//验证需要使用的JS接口列表
$.ajax({
type: 'POST',
url: _url,
data: {},
dataType: "json",
success: function(data){
console.log("data="+data);
appid=data.appid;
timestamp=data.timestamp;
nonceStr=data.noncestr;
signature=data.signature;
link=data.link;
openid=data.openid;
wx.config({
debug: false, // 开启调试模式,调用的所有api的返回值会在客户端alert出来,若要查看传入的参数,可以在pc端打开,参数信息会通过log打出,仅在pc端时才会打印。
appId: appid, // 必填,公众号的唯一标识
timestamp: timestamp, // 必填,生成签名的时间戳
nonceStr: nonceStr, // 必填,生成签名的随机串
signature: signature,// 必填,签名,见附录1
jsApiList: [
'checkJsApi',
'onMenuShareTimeline',
'onMenuShareAppMessage',
'onMenuShareQQ',
'onMenuShareWeibo',
'hideMenuItems',
'showMenuItems',
'hideAllNonBaseMenuItem',
'showAllNonBaseMenuItem',
'translateVoice',
'startRecord',
'stopRecord',
'onRecordEnd',
'playVoice',
'pauseVoice',
'stopVoice',
'uploadVoice',
'downloadVoice',
'chooseImage',
'previewImage',
'uploadImage',
'downloadImage',
'getNetworkType',
'openLocation',
'getLocation',
'hideOptionMenu',
'showOptionMenu',
'closeWindow',
'scanQRCode',
'chooseWXPay',
'openProductSpecificView',
'addCard',
'chooseCard',
'openCard'
] // 必填,需要使用的JS接口列表,所有JS接口列表见附录2
});
},
error:function(e){
console.log("获取签名参数失败。异常:"+e);
}
});
});
wx.ready(function () {
//需要调用的jssdk 方法
//具体参照https://mp.weixin.qq.com/wiki/7/aaa137b55fb2e0456bf8dd9148dd613f.html
//此处为分享朋友圈例子
wx.onMenuShareTimeline({
title: title,
link: link,
imgUrl: imgUrl,
trigger: function (res) {
// 不要尝试在trigger中使用ajax异步请求修改本次分享的内容,因为客户端分享操作是一个同步操作,这时候使用ajax的回包会还没有返回
//alert(link);
//alert('用户点击分享到朋友圈');
},
success: function (res) {
updateShare("y",openid,productid)
//alert('已分享');
},
cancel: function (res) {
//alert('已取消');
},
fail: function (res) {
//alert(JSON.stringify(res));
}
});
});
相关推荐
appId是微信分配给开发者的唯一标识,而timestamp、nonceStr和signature是用于签名验证的参数,必须由后端生成并返回给前端。签名的生成涉及到这几个参数,按照微信官方提供的算法进行组合和加密。 jsApiList属性是...
该微信Jssdk调用的demo采用三层架构,并使用数据库来缓存全局jsapi_ticket,避免调用超出次数,内仅含微信分享给朋友以及分享至朋友圈两个接口的调用。内含数据库sql文件以及使用文档,代码中也有详细的注释,简单易懂...
//微信上传下载媒体文件 // 这里不能加上s,不然保存不了amr文件 $url = "http://file.api.weixin.qq.com/cgi-bin/media/get?access_token={$access_token}&media;_id={$media_id}"; ffmpeg下载地址 ...
微信开发入门教程 jssdk,通过config接口注入权限验证配置java+jsp微信开发教程,功能:扫描二维码,拍照、本地选图,图片预览,上传图片,下载图片,获取当前网络状态,查看地理位置,获取当前地理位置打开地图,...
由于微信jssdk文档经常升级变动,不保证本实例能正常运行,只供参考。 本实例只支持PHP运行,其它语言可以作参考。
微信jssdk支付代码包,微信最新发布的微信支付jssdk功能。
用于记录接入微信JS-SDK的坑,以后方便查询 第一次接入公众号微信支付、分享、定位等等的坑的时候,心里是迷茫而又恐惧。因为,听说坑特别多,后来发现自己的亲身体验到了这一点。 支付的坑 1、当前URL未注册 问题:...
微信JSSDK(JavaScript SDK)是微信为开发者提供的一个强大工具集,主要用于在网页中集成微信的功能,如分享、支付、扫码等。PHP版的JSSDK则为PHP后端开发者提供了与微信服务器交互的接口,以便获取和验证微信用户的...
微信JSSDK调用扫一扫功能别一维码二维码。适用各种微信内页面需要调用扫一扫功能的项目,需要认证的服务号作授权设置。
微信jssdk拍照
用户长按录音,松手后直接结束录音,结束录音后,用户可以选择重新录音、播放刚才的录音,上传录音(这里的上传录音指上传到自己服务器,上传步骤是,前端调用wx.uploadVoice,后台再到微信服务器下载音频文件,上传...
自己对企业微信jssdk做的一个封装,集成了vConsole和weui,可以方便的获取当前页面的入口环境信息: isWechat //是否微信浏览器 isLoading //是否在loading状态 vConsole //vConsole对象 context //当前页面...
微信JSSDK(JavaScript Software Development Kit)是微信官方推出的一款用于网页端的开发工具包,主要目的是方便开发者在网页上实现微信相关的功能,比如分享、支付、多媒体处理等。通过集成JSSDK,开发者可以更好...
使用JSSDK主要包括 1、判断当前客户端版本是否支持指定JS接口、 2、分享接口(微信认证) 3、图像接口 4、音频接口 5、智能接口(识别语音并返回结果) 6、设备信息(获取网络状态) 7、地理位置 8、界面操作 9、...
微信获取jssdk例子JAVA例子生成sign签名(MD5格式) 校验sign
该代码已修改为thinkphp控制器,可以直接放在前台进行使用,其他框架请自行参照相关规则进行修改
微信的分享功能,分享的时候有图片,自己做的一个demo,以后用到时候可以拿出来观看,适合初学者,自己亲测可以实现,有一个坑的地方自己的微信公众号是否有分享权限,没有怎么试都是失败的
创建了WxInitController,提供了初始化微信JSSDK配置信息的接口。 处理获取分享URL的请求,并调用服务层方法来初始化微信JSSDK配置。 3.微信服务层: WxService负责业务逻辑处理,包括获取微信AccessToken、...
官方没有asp的demo,弄了个asp版的微信jssdk