微信开发

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

微信JS-SDK说明文档目录1概述1.1JSSDK使用步骤1.1.1步骤一:绑定域名1.1.2步骤二:引入JS文件1.1.3步骤三:通过config接口注入权限验证配置1.1.4步骤四:通过ready接口处理成功验证1.1.5步骤五:通过error接口处理失败验证1.2接口调用说明2基础接口2.1判断当前客户端版本是否支持指定JS接口3分享接口3.1获取“分享到朋友圈”按钮点击状态及自定义分享内容接口3.2获取“分享给朋友”按钮点击状态及自定义分享内容接口3.3获取“分享到QQ”按钮点击状态及自定义分享内容接口3.4获取“分享到腾讯微博”按钮点击状态及自定义分享内容接口3.5获取“分享到QQ空间”按钮点击状态及自定义分享内容接口4图像接口4.1拍照或从手机相册中选图接口4.2预览图片接口4.3上传图片接口4.4下载图片接口5音频接口5.1开始录音接口5.2停止录音接口5.3监听录音自动停止接口5.4播放语音接口5.5暂停播放接口5.6停止播放接口5.7监听语音播放完毕接口5.8上传语音接口5.9下载语音接口6智能接口6.1识别音频并返回识别结果接口7设备信息7.1获取网络状态接口8地理位置8.1使用微信内置地图查看位置接口8.2获取地理位置接口9摇一摇周边9.1开启查找周边ibeacon设备接口9.2关闭查找周边ibeacon设备接口9.3监听周边ibeacon设备接口10界面操作10.1隐藏右上角菜单接口10.2显示右上角菜单接口10.3关闭当前网页窗口接口10.4批量隐藏功能按钮接口10.5批量显示功能按钮接口10.6隐藏所有非基础按钮接口10.7显示所有功能按钮接口11微信扫一扫11.1调起微信扫一扫接口12微信小店12.1跳转微信商品页接口13微信卡券13.1获取api_ticket13.2拉取适用卡券列表并获取用户选择信息13.3批量添加卡券接口13.4查看微信卡包中的卡券接口14微信支付14.1发起一个微信支付请求15附录1-JS-SDK使用权限签名算法16附录2-所有JS接口列表17附录3-所有菜单项列表18附录4-卡券扩展字段及签名生成算法19附录5-常见错误及解决方法20附录6-DEMO页面和示例代码21附录7-问题反馈概述微信JS-SDK是微信公众平台面向网页开发者提供的基于微信内的网页开发工具包。通过使用微信JS-SDK,网页开发者可借助微信高效地使用拍照、选图、语音、位置等手机系统的能力,同时可以直接使用微信分享、扫一扫、卡券、支付等微信特有的能力,为微信用户提供更优质的网页体验。此文档面向网页开发者介绍微信JS-SDK如何使用及相关注意事项。JSSDK使用步骤步骤一:绑定域名先登录微信公众平台进入“公众号设置”的“功能设置”里填写“JS接口安全域名”。备注:登录后可在“开发者中心”查看对应的接口权限。步骤二:引入JS文件在需要调用JS接口的页面引入如下JS文件,(支持https):请注意,如果你的页面启用了https,务必引入,否则将无法在iOS9.0以上系统中成功使用JSSDK如需使用摇一摇周边功能,请引入jweixin-1.1.0.js备注:支持使用AMD/CMD标准模块加载方法加载步骤三:通过config接口注入权限验证配置所有需要使用JS-SDK的页面必须先注入配置信息,否则将无法调用(同一个url仅需调用一次,对于变化url的SPA的webapp可在每次url变化时进行调用,目前Android微信客户端不支持pushState的H5新特性,所以使用pushState来实现webapp的页面会导致签名失败,此问题会在Android6.2中修复)。wx.config({debug:true,//开启调试模式,调用的所有api的返回值会在客户端alert出来,若要查看传入的参数,可以在pc端打开,参数信息会通过log打出,仅在pc端时才会打印。appId:'',//必填,公众号的唯一标识timestamp:,//必填,生成签名的时间戳nonceStr:'',//必填,生成签名的随机串signature:'',//必填,签名,见附录1jsApiList:[]//必填,需要使用的JS接口列表,所有JS接口列表见附录2});步骤四:通过ready接口处理成功验证wx.ready(function(){//config信息验证后会执行ready方法,所有接口调用都必须在config接口获得结果之后,config是一个客户端的异步操作,所以如果需要在页面加载时就调用相关接口,则须把相关接口放在ready函数中调用来确保正确执行。对于用户触发时才调用的接口,则可以直接调用,不需要放在ready函数中。});步骤五:通过error接口处理失败验证wx.error(function(res){//config信息验证失败会执行error函数,如签名过期导致验证失败,具体错误信息可以打开config的debug模式查看,也可以在返回的res参数中查看,对于SPA可以在这里更新签名。});接口调用说明所有接口通过wx对象(也可使用jWeixin对象)来调用,参数是一个对象,除了每个接口本身需要传的参数之外,还有以下通用参数:success:接口调用成功时执行的回调函数。fail:接口调用失败时执行的回调函数。complete:接口调用完成时执行的回调函数,无论成功或失败都会执行。cancel:用户点击取消时的回调函数,仅部分有用户取消操作的api才会用到。trigger:监听Menu中的按钮点击时触发的方法,该方法仅支持Menu中的相关接口。备注:不要尝试在trigger中使用ajax异步请求修改本次分享的内容,因为客户端分享操作是一个同步操作,这时候使用ajax的回包会还没有返回。以上几个函数都带有一个参数,类型为对象,其中除了每个接口本身返回的数据之外,还有一个通用属性errMsg,其值格式如下:调用成功时:xxx:ok,其中xxx为调用的接口名用户取消时:xxx:cancel,其中xxx为调用的接口名调用失败时:其值为具体错误信息基础接口判断当前客户端版本是否支持指定JS接口wx.checkJsApi({jsApiList:['chooseImage'],//需要检测的JS接口列表,所有JS接口列表见附录2,success:function(res){//以键值对的形式返回,可用的api值true,不可用为false//如:{checkResult:{chooseImage:true},errMsg:checkJsApi:ok}}});备注:checkJsApi接口是客户端6.0.2新引入的一个预留接口,第一期开放的接口均可不使用checkJsApi来检测。分享接口请注意不要有诱导分享等违规行为,对于诱导分享行为将永久回收公众号接口权限,详细规则请查看:朋友圈管理常见问题。获取“分享到朋友圈”按钮点击状态及自定义分享内容接口wx.onMenuShareTimeline({title:'',//分享标题link:'',//分享链接imgUrl:'',//分享图标success:function(){//用户确认分享后执行的回调函数},cancel:function(){//用户取消分享后执行的回调函数}});获取“分享给朋友”按钮点击状态及自定义分享内容接口wx.onMenuShareAppMessage({title:'',//分享标题desc:'',//分享描述link:'',//分享链接imgUrl:'',//分享图标type:'',//分享类型,music、video或link,不填默认为linkdataUrl:'',//如果type是music或video,则要提供数据链接,默认为空success:function(){//用户确认分享后执行的回调函数},cancel:function(){//用户取消分享后执行的回调函数}});获取“分享到QQ”按钮点击状态及自定义分享内容接口wx.onMenuShareQQ({title:'',//分享标题desc:'',//分享描述link:'',//分享链接imgUrl:'',//分享图标success:function(){//用户确认分享后执行的回调函数},cancel:function(){//用户取消分享后执行的回调函数}});获取“分享到腾讯微博”按钮点击状态及自定义分享内容接口wx.onMenuShareWeibo({title:'',//分享标题desc:'',//分享描述link:'',//分享链接imgUrl:'',//分享图标success:function(){//用户确认分享后执行的回调函数},cancel:function(){//用户取消分享后执行的回调函数}});获取“分享到QQ空间”按钮点击状态及自定义分享内容接口wx.onMenuShareQZone({title:'',//分享标题desc:'',//分享描述link:'',//分享链接imgUrl:'',//分享图标success:function(){//用户确认分享后执行的回调函数},cancel:function(){//用户取消分享后执行的回调函数}});图像接口拍照或从手机相册中选图接口wx.chooseImage({count:1,//默认9sizeType:['original','compressed'],//可以指定是原图还是压缩图,默认二者都有sourceType:['album','camera'],//可以指定来源是相册还是相机,默认二者都有success:function(res){varlocalIds=res.localIds;//返回选定照片的本地ID列表,localId可以作为img标签的src属性显示图片}});预览图片接口wx.previewImage({current:'',//当前显示图片的http链接urls:[]//需要预览的图片http链接列表});上传图片接口wx.uploadImage({localId:'',//需要上传的图片的本地ID,由chooseImage接口获得isShowProgressTips:1,//默认为1,显示进度提示success:function(res){varserverId=res.serverId;//返回图片的服务器端ID}});备注:上传图片有效期3天,可用微信多媒体接口下载图片到自己的服务器,此处获得的serverId即media_id,参考文档../12/58bfcfabbd501c7cd77c19bd9cfa8354.html目前多媒体文件下载接口的频率限制为10000次/天,如需要调高频率,请邮件weixin-open@qq.com,邮件主题为【申请多媒体接口调用量】,请对你的项目进行简单描述,附上产品体验链接,并对用户量和使用量进行说明。下载图片接口wx.downloadImage({serverId:'',//需要下载的图片的服务器端ID,由uploadImage接口获得isShowProgressTips:1,//默认为1,显示进度提示success:function(res){varlocalId=res.localId;//返回图片下载后的本地ID}});音频接口开始录音接口wx.startRecord();停止录音接口wx.stopRecord({success:function(res){varlocalId=res.localId;}});监听录音自动停止接口wx.onVoiceRecordEnd({//录音时间超过一分钟没有停止的时候会执行complete回调complete:function(res){varlocalId=res.localId;}});播放语音接

1 / 43
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功