本文为大家分享了js微信接口详细版,供大家参考,具体内容如下
基本说明
使用说明 文件调用JS接口的页面引入如下JS文件,(支持https): 备注:支持使用 AMD/CMD 标准模块加载方法加载
以上几个函数都带有一个参数,类型为对象,其中除了每个接口本身返回的数据之外,还有一个通用属性errMsg,其值格式如下:
1. 调用成功时:"xxx:ok" ,其中xxx为调用的接口名
2. 用户取消时:"xxx:cancel",其中xxx为调用的接口名
3. 调用失败时:其值为具体错误信息
});
接口调用说明
所有接口通过wx对象(也可使用jWeixin对象)来调用,参数是一个对象,除了每个接口本身需要传的参数之外,还有以下通用参数:
1. success:接口调用成功时执行的回调函数。
2. fail:接口调用失败时执行的回调函数。
3. complete:接口调用完成时执行的回调函数,无论成功或失败都会执行。
4. cancel:用户点击取消时的回调函数,仅部分有用户取消操作的api才会用到。
5. trigger: 监听Menu中的按钮点击时触发的方法,该方法仅支持Menu中的相关接口。基础接口
判断当前客户端版本是否支持指定JS接口
分享接口
获取“分享到朋友圈”按钮点击状态及自定义分享内容接口获取“分享给朋友”按钮点击状态及自定义分享内容接口
获取“分享到QQ”按钮点击状态及自定义分享内容接口
获取“分享到腾讯微博”按钮点击状态及自定义分享内容接口
预览图片接口
上传图片接口
备注:
可用微信下载多媒体文件接口下载上传的图片,此处获得的 serverId 即 media_id,参考文档../12/58bfcfabbd501c7cd77c19bd9cfa8354.html
下载图片接口
监听录音自动停止接口
播放语音接口
暂停播放接口
停止播放接口
监听语音播放完毕接口
上传语音接口
备注:可用微信下载多媒体文件接口下载上传的语音,此处获得的 serverId 即 media_id,参考文档../12/58bfcfabbd501c7cd77c19bd9cfa8354.html
下载语音接口
设备信息
获取网络状态接口
地理位置
使用微信内置地图查看位置接口
获取地理位置接口
批量显示功能按钮接口
隐藏所有非基础按钮接口wx.hideAllNonBaseMenuItem();
显示所有功能按钮接口wx.showAllNonBaseMenuItem(); 收获地址
编辑收货地址接口
获取最近的收货地址接口
微信小店
跳转微信商品页接口
微信卡券
调起适用于门店的卡券列表并获取用户选择列表
批量添加卡券接口
查看微信卡包中的卡券接口
微信支付
发起一个微信支付请求
获得jsapi_ticket之后,就可以生成JSSDK权限验证的签名了。
签名算法
签名生成规则如下:参与签名的字段包括noncestr(随机字符串),有效的jsapi_ticket,timestamp(时间戳),url(当前网页的URL,不包含#及其后面部分) 。对所有待签名参数按照字段名的ASCII 码从小到大排序(字典序)后,使用URL键值对的格式(即key1=value1&key2=value2…)拼接成字符串string1。这里需要注意的是所有参数名均为小写字符。对string1作sha1加密,字段名和字段值都采用原始值,不进行URL 转义。 即signature=sha1(string1)。 示例:
• noncestr=Wm3WZYTPz0wzccnW
• jsapi_ticket=sM4AOVdWfPE4DxkXGEs8VMCPGGVi4C3VM0P37wVUCFvkVAy_90u5h9nbSlYy3-Sl-HhTdfl2fzFy1AOcHKP7qg
• timestamp=1414587457
• url=http://mp.weixin.qq.com 步骤1. 对所有待签名参数按照字段名的ASCII 码从小到大排序(字典序)后,使用URL键值对的格式(即key1=value1&key2=value2…)拼接成字符串string1:
jsapi_ticket=sM4AOVdWfPE4DxkXGEs8VMCPGGVi4C3VM0P37wVUCFvkVAy_90u5h9nbSlYy3-Sl-HhTdfl2fzFy1AOcHKP7qg&noncestr=Wm3WZYTPz0wzccnW×tamp=1414587457&url=http://mp.weixin.qq.com 步骤2. 对string1进行sha1签名,得到signature:
f4d90daf4b3bca3078ab155816175ba34c443a7b
注意事项
1. 签名用的noncestr和timestamp必须与wx.config中的nonceStr和timestamp相同。
2. 签名用的url必须是调用JS接口页面的完整URL。
3. 出于安全考虑,开发者必须在服务器端实现签名的逻辑。微信扫一扫
调起微信扫一扫接口
附录1
-JSSDK使用权限签名算法
jsapi_ticket
生成签名之前必须先了解一下jsapi_ticket,jsapi_ticket是公众号用于调用微信JS接口的临时票据。正常情况下,jsapi_ticket的有效期为7200秒,通过access_token来获取。由于获取jsapi_ticket的api调用次数非常有限,频繁刷新jsapi_ticket会导致api调用受限,影响自身业务,开发者必须在自己的服务全局缓存jsapi_ticket 。
1. 参考以下文档获取access_token(有效期7200秒,开发者必须在自己的服务全局缓存access_token):../12/4b08382e91217687730a2dfc71e9218c.html
2. 用第一步拿到的access_token 采用http GET方式请求获得jsapi_ticket(有效期7200秒,开发者必须在自己的服务全局缓存jsapi_ticket):
附录2
-所有JS接口列表
• onMenuShareTimeline
• onMenuShareAppMessage
• onMenuShareQQ
• onMenuShareWeibo
• startRecord
• stopRecord
• onVoiceRecordEnd
• playVoice
• pauseVoice
• stopVoice
• onVoicePlayEnd
• uploadVoice
• downloadVoice
• chooseImage
• previewImage
• uploadImage
• downloadImage
• translateVoice
• getNetworkType
• openLocation
• getLocation
• hideOptionMenu
• showOptionMenu
• hideMenuItems
• showMenuItems
• hideAllNonBaseMenuItem
• showAllNonBaseMenuItem
• closeWindow
• scanQRCode
• chooseWXPay
• getLatestAddress
• editAddress
• openProductSpecificView
• addCard
• chooseCard
• openCard
附录3
-所有按钮列表
基本类
• 举报: "menuItem:exposeArticle"
• 调整字体: "menuItem:setFont"
• 日间模式: "menuItem:dayMode"
• 夜间模式: "menuItem:nightMode"
• 刷新: "menuItem:refresh"
• 查看公众号(已添加): "menuItem:profile"
• 查看公众号(未添加): "menuItem:addContact"
传播类
• 发送给朋友: "menuItem:share:appMessage"
• 分享到朋友圈: "menuItem:share:timeline"
• 分享到QQ: "menuItem:share:qq"
• 分享到Weibo: "menuItem:share:weiboApp"
• 收藏: "menuItem:favorite"
• 分享到FB: "menuItem:share:facebook"
保护类
• 调试: "menuItem:jsDebug"
• 编辑标签: "menuItem:editTag"
• 删除: "menuItem:delete"
• 复制链接: "menuItem:copyUrl"
• 原网页: "menuItem:originPage"
• 阅读模式: "menuItem:readMode"
• 在QQ浏览器中打开: "menuItem:openWithQQBrowser"
• 在Safari中打开: "menuItem:openWithSafari"
• 邮件: "menuItem:share:email"
• 一些特殊公众号: "menuItem:share:brand"
附录4
-位置与地址签名生成算法 addrSign的生成规则与JSSDK权限验证的签名生成规则相同(参考附录1),只是参与签名参数有所不同。参与addrSign的签名参数有:appId、url(当前网页url)、timestamp、noncestr、accesstoken(用户授权凭证,请参照oauth2.0 协议获取)。附录5
-支付扩展字段及签名生成算法 订单详情(package)扩展字符串定义 在商户调起JS API 时,商户需要此时确定该笔订单详情,并将该订单详情通过一定的方式进行组合放入package。JS API 调用后,微信将通过package 的内容生成预支付单。下 面将定义package 的所需字段列表以及签名方法。 接口需要注意:所有传入参数都是字符串类型!本文已被整理到了《》,欢迎大家学习阅读。
小编为大家精心整理的,希望喜欢。