- 小程序纯前端将数据导出为excel表格
网上有许多文章是讲述小程序将数据导出为excel表格的,但大多需要经过请求服务端,再加上云存储。那一套逻辑之前做后端的时候就玩过了。很多时候,我们浏览页面时数据已经从服务端获取到本地了,直接将之导出即可,再走服务端,实为多此一举。为了减轻服务端压力,于是便有了这篇文章。本文章介绍如何在小程序使用纯前端技术将以获取到的数据导出为excel表格。文末有代码片段 xlsx插件文档 sheetjs插件文档 [代码]const XLSX = require('../utils/excel.js') Page({ data: { }, onLoad() { }, exportData() { // 数据源 const data = [{ code: 1, name: 'A', }, { code: 2, name: 'B', }, { code: 3, name: 'C', }, { code: 4, name: 'D', }] // 构建一个表的数据 let sheet = [] let title = ['序号', '姓名'] sheet.push(title) data.forEach(item => { let rowcontent = [] rowcontent.push(item.code) rowcontent.push(item.name) sheet.push(rowcontent) }) // XLSX插件使用 var ws = XLSX.utils.aoa_to_sheet(sheet); var wb = XLSX.utils.book_new(); XLSX.utils.book_append_sheet(wb, ws, "用户表"); var fileData = XLSX.write(wb, { bookType: "xlsx", type: 'base64' }); let filePath = `${wx.env.USER_DATA_PATH}/用户表.xlsx` // 写文件 const fs = wx.getFileSystemManager() fs.writeFile({ filePath: filePath, data: fileData, encoding: 'base64', bookSST: true, success(res) { console.log(res) const sysInfo = wx.getSystemInfoSync() // 导出 if (sysInfo.platform.toLowerCase().indexOf('windows') >= 0) { // 电脑PC端导出 wx.saveFileToDisk({ filePath: filePath, success(res) { console.log(res) }, fail(res) { console.error(res) util.tips("导出失败") } }) } else { // 手机端导出 // 打开文档 wx.openDocument({ filePath: filePath, showMenu: true, success: function (res) { console.log('打开文档成功') }, fail: console.error }) } }, fail(res) { console.error(res) if (res.errMsg.indexOf('locked')) { wx.showModal({ title: '提示', content: '文档已打开,请先关闭', }) } } }) } }) [代码] 导出效果如下,如需高级设置请参照xlsx插件文档 sheetjs插件文档 [图片] 代码片段 -完-
2023-08-11 - H5跳转视频号首页,H5内预约直播,功能是如何实现的?
发现一个已经实现的链接:https://channels-aladin.wxqcloud.qq.com/aladin/html/4957987e-928e-43f4-bb98-eeaf8fe1cd9c.html [图片] 求各位大佬指教
2022-09-03 - 有没有大佬知道不通过服务端接口获取小程序URL Scheme简易方法呀?
目前想获取微信小程序URL Scheme找遍了全网教程都是参考官方文档的方法获取,对普通小白运营人员或者在用SaaS版的小程序人员极不友好,以前还能通过官方工具生成但是被官方给关闭了,目前没有找到完整简单的获取教程或者相关的生成工具,跪求大佬技术大牛出个简易适合小白的获取URL Scheme教程或者相关生成工具推荐。[图片]
05-26 - Url Scheme和Url Link这2种方式打开小程序有实质区别吗?
如题,这2种方式除了IOS和安卓上打开小程序的体验不同以外,还有其他区别吗?
2021-07-08 - 小程序一次性订阅消息详解
简介 相对来说小程序发送通知用得更多的还是一次性订阅模版,发现社区挺多同学对一次性订阅的一些细节设定存在不少疑问。所以这里整理了一些常见的问题。 订阅框长这样,本文也围绕这个弹窗展开: [图片] 常见问题Q&A 1.获取模版ID 1.1 如何获取到合适的模版ID? 答:进入MP后台,https://mp.weixin.qq.com, 可以在【功能】->【订阅消息】->【公共模板库】选择合适的模版。选择后在【我的模版】 查看到模版ID。 注意: 不同小程序,选用同一个模版,生成的模版ID是不一样的。 [图片] 1.2 如何申请新的模版? 答:在MP后台申请,入口比较隐蔽。如要在【公共模版库】搜索任意模版,然后翻到最后一页,会出现【帮助我们完善模板库】的选项,点击进入申请新模版。比如此处我搜索了签到 [图片] 2.订阅次数 2.1 勾选了【总是保持以上选择,不再询问】,是不是就可以多次向发送通知了? 答:不能,用户没有再次点击触发订阅的按钮就不会增加订阅次数。勾选之后只是触发订阅时不再弹窗,保持上一次用户的选项进行订阅接口的调用。 2.2 用户一天内多次点击订阅后,是不是就能发送多条通知? 答: 是的,用户一天内点了N次订阅,就可以向用户发送多条通知。 2.3 用户点击订阅后,此次发通知机会的有效期是多久? 答: 永久有效。 2.4 勾选部分模版,再选择勾选 【总是保持以上选择,不再询问】,点击【确定】后,下次订阅哪几个模版的订阅次数会增加? [图片] 答: 如上图,只勾选了AB,然后保持选项点击【确定】,下次订阅时只有A,B模版的订阅次数会增加。 2.5 勾选部分模版,再选择勾选 【总是保持以上选择,不再询问】,点击【取消】后,下次订阅哪几个模版的订阅次数会增加? 答: 如果选择了【取消】+ 【保持选项】,所有订阅消息次数都不会再增加。如上图,不管是否勾选,A、B、C三个模版次数都不会增加。 2.6 勾选【总是保持以上选择,不再询问】选项后,如何修改选择? 答: 可以在小程序设置页面,配置是否接收模版消息。(小程序右上角三点按钮,可以唤起进入设置页面的面板) [图片] 2.7 为什么我设置的通知页面没有显示MP后台配置的通知模版? 答:只有勾选过【总是保持以上选择,不再询问】的模版消息才会进入这个配置页面。 2.8 关闭接口通知按钮后(上图红框内按钮),再开启,订阅次数怎么计算? 答: 关闭按钮后,所有通知都无法接收,订阅次数全部清零。所以重新开启后,也需要用户重新订阅才能再次发送通知。 3.弹窗相关 3.1 模版ABC已经勾选【保持选项】,在另一处同时订阅ADF,此时还会弹窗吗? 答: 会,但是弹窗中只会有两个模版DF,模版A不显示。 3.2 开发者勾选【总是保持以上选择,不再询问】后,怎么重新唤起弹窗? 答:微信开发者工具,清除全部缓存。重新生成二维码,测试机扫码后即可重新唤起弹窗。 Tips:登陆开发者工具的微信账号和需要重置弹窗的微信账号需要保持一致。
09-04 - 小程序下单订阅后,微信服务通知点击查看详情如何跳转对应的订单页面?
如题,在微信小程序下单页面添加了订阅消息,下单成功的通知, 然后我返回微信页面,进入服务通知收到的订阅消息点击进入小程序查看,如何跳转到下单成功的详情页面,求大佬解惑 [图片]
2023-07-19 - 小程序一次性订阅消息,通知消息是否有内置次数限制?
API接口 :小程序开发文档->服务端开发->消息相关->发送订阅消息-> 接口路由(sendMessage)"https://api.weixin.qq.com/cgi-bin/message/subscribe/send?access_token=ACCESS_TOKEN" 情况描述: 我基于一次性消息模板使用这个API接口向指定客户发送模板消息,使用这个接口的前提是,用户在进入小程序前必须先授权一次性订阅消息模板(弹出框). 而我测试下来的情况:用户每授权一次,服务端才可以推送到该用户微信一次消息,即使用户勾选了"总是保持以上选择",起到的作用的也只是不再弹出让用户授权界面 仍有一个内置的授权次数限制(这一点我并未在官方文档上找到描述),总的来讲就是用户在小程序中授权了几次,服务端才能对应通知用户几次消息 我现在疑惑的是: 1.这个一次性订阅消息:用户授权最高能授权多少次,比如:达到100次就不会再累加授权次数,还是会无限累加次数? 2.这个授权次数有时间限制吗?比如:7天内服务端没有通知消息,是否就需要用户重新授权
2023-05-30 - 小程序通过公众号推送消息,提示openid 无效?
小程序通过公众号推送信息,9月20号微信官方下架统一消息推送接口后,我按官方文档适配程序,交了300块钱开通微信开放平台,并将小程序和公众号绑定在同一主体下,但是推送时仍旧提示小程序的openid 无效,请问如何解决 [图片]
2023-09-23 - 微信开发者工具的上传功能如何禁用?
接入了miniprogram ci以后,想通过git管理来控制版本的发布,不希望开发者随便上传代码,请问:微信开发者工具的上传代码功能有办法禁用么?
2023-04-11 - <rich-text>可以对渲染html,里面图片进行长按识别图中二维码吗?
比如:<rich-text nodes="{{htmlContent}}"></rich-text>,htmlContent是后台返回的富文本编辑器转换的含html标签样式代码的字符串,里面有图片,可以在小程序实现长按图片识别图中二维码的功能?
2022-06-12 - 设置了ssl证书也就是说是https的域名,也添加到合法域名了,但是在小程序真机请求无响应?
我申请了ssl证书,配置也生效了,request请求无响应,也不报错,在开发者工具取消勾选不校验后也没问题,是正常的,但是在真机上程序不会继续运行了。
2023-02-13 - 微信公众号如何开通视频号?
请问下微信公众号,如何开通视频号?我在微信公众平台,没有找到相关入口
2021-09-17 - 使用小程序内的扫码功能实现网站和小程序端用户账号统一
前言 众所周知,目前情况下要实现微信账号相关的多端账号统一必须通过开放平台,使用unionid来实现。但是如果在没有开放平台(或者其他原因不想用、不能用),或者先有网站端已使用了原始登录方式(账号密码、手机号验证码等)的情况下,怎么实现账号统一呢?我这里想到了一种使用小程序内的扫码功能api(wx.scanCode)实现网站和小程序端用户账号统一的方法,欢迎讨论。 小程序扫码登录网站 这种一般是先有小程序,小程序端使用微信授权登录,然后需要在网站上使用同一账号登录。一般来说是在小程序端要求用户设置账号密码、或者先绑定手机号之后,再用账号密码或者手机号验证码登录。 小程序扫码的方法是网页上要登录时先生成一个唯一的登录码,比如:[代码]1234[代码],然后放在网站域名下的一个网址中,比如:[代码]http://www.abc.com/?loginCode=1234[代码],然后把这个网址生成二维码展示。为了更好的用户体验,这个网址应该是实际可访问的,可以用于在使用微信扫码时展示小程序码引导用户打开小程序。 用户在小程序中使用扫码api扫码后从扫码结果中提取出登录码,提交到后端接口,后端接口将登录码和当前登录小程序的用户绑定。网页端在展示二维码后,开启一个轮询,定时访问后端接口查询该登录码的登录状态,在该登录码和小程序已登录用户绑定后完成网站上的用户登录。 [图片] 小程序扫码登录小程序 这种一般是先有网站,小程序端要用网站用户登录的情况,一般的做法是小程序端也用和网站上一样的账号密码或者手机号验证码(或者微信授权获取手机号)的方式登录。 小程序扫码的方法大体原理上和上一个情况一样,流程略有不同。网页上用户登录后展示带登录码的网址对应的二维码,同时将当前登录用户和登录码绑定。小程序中扫码后提取出登录码,提交到后端接口,后端接口查询该登录码绑定的用户返回后在小程序端完成登录。还可以配合wx.login绑定当前用户的openid,实现自动登录。 网页端展示二维码后使用轮询查看登录码的登录状态,到期或者已登录后在网页端销毁二维码。 [图片] 总结 总结下来,这个方法就是以登录码为媒介,通过在某一端将登录码和登录用户绑定后,在另一端实现同一用户的登录,实际使用中还需要考虑登录码的有效期等。 以上方法流程不知道会有什么风险,欢迎大家的讨论。 ---------网友讨论分割线---------- 社区大佬杨泉提出扫码登录小程序的场景中,可以使用微信直接扫带参数的小程序码来实现。这个方案从技术上来说应该没什么问题,大致原理也是类似的,但是用户体验会好很多。 然鹅,我在实际项目中没有采用这一方案,主要基于以下两个原因: 微信直接扫码的情况下用户不知道小程序是否已登录,这时候如果扫了一个其他用户的码,还要涉及到用户切换操作,很麻烦 这个码有时效性,我实际设置的是1分钟过期,这就表示每1分钟就有可能要重新请求一次微信的服务端接口,也很麻烦 ---------网友再次讨论分割线---------- 社区大佬拾忆提出可以使用扫普通链接二维码打开小程序来实现功能。在小程序后台完成相关配置后,直接用微信扫码就会打开小程序指定页面个并将网址直接通过参数[代码]q[代码]带给页面,用户体验再次获得提升,果然大佬就是大佬。
2020-11-01 - 已知视频号的id可以提供批量获取视频号下视频的接口吗?
小程序打通视频号需要内嵌播放视频号中的视频.视频号提供的两种方式都需要得到视频号助手搬运的视频feedid着实有点不方便.
2023-03-02 - 小程序:如何批量获取视频号视频视频feedId或视频链接?
小程序:如何批量获取视频号视频视频feedId或视频链接?
2023-03-02 - 获取视频feedId?
有没有api可以批量获取视频号中视频的feedId?
2023-12-13 - wx.openChannelsActivity 如何获取 feedId?
wx.openChannelsActivity 如何获取 feedId
2021-08-13 - 视频号有开发文档吗。想获取自己视频号里面的视频列表?
视频号有开发文档吗。想获取自己视频号里面的视频列表?
2023-10-24 - 微信小程序如何实现 本地文件(.pdf、.docx)上传?
业务需要实现 微信小程序 本地文件(.pdf、.docx)上传功能,翻阅官网看到了 chooseMessageFile() 方法和 getFileSystemManager(),特此求证下, getFileSystemManager() 可用于文件上传么?这个API可使用在什么场景呢?目前小程序实现文件上传功能是否就只是 这两个方法呢?chooseMessageFile() 获取本地是从微笑客户端聊天中获取,请问还有直接获取本地文件的方式么?
2021-05-17 - 小程序发货信息管理怎么关闭?
是因为执照没满一年吗 申请关闭也被拒了 这样操作的话,没办法运作了。
2023-06-09 - 发货信息管理怎么关闭?
请问一下为什么我们正儿八经的开店,给我们小程序来了一出发货信息管理,怎么关闭? 如果不能关闭,那么请问一下怎么样才能和我们小程序商城的订单物流信息同步?? 现在的问题是我们商城快递签收了,客户也确认收货了,你们腾讯的小程序后台还是没任何物流状态更新。把我们的货款卡着好玩是吧?? 再不处理我直接报警,再不行直接起诉,妈的真的特么火大,什么个垃圾!!
2023-05-10 - 小程序备案内容个人整理
注:以下资料来自官方文档 相关内容具有时效性 仅适用发文章时点。 官方文档地址:传送门 官方常见备案问题:传送门 一、几个时间点 自2023年09月01日起,新的微信小程序,必须备案后才能上架; 在2024年03月31日前,所有小程序都必须完成备案; 于2024年04月01日起,对未备案小程序进行清退处理。 微信小程序备案系统已于9月4日上线。 二、备案流程 [找备案入口]–[填主体信息]–[填小程序信息]–[初审]–[短信核验]–[通管局审核] 1,在小程序后台找到备案入口 [图片] [图片] (1)新的未上架小程序,可以在小程序首页点击【去备案】进入。 (2)已上架小程序,可以在设置-基本设置中找到【去备案】入口。 或者在小程序后台顶部会出现补充备案的提醒,也可以进入备案。 注:截止文章发稿时,官方后台暂时尚未出现相关入口,应是9月1日后出现。 2,填写备案主体信息 (1)选地区、主办者性质(个人或企业)、相关证件与上传、通讯地址等。 (2)还需要填写主体负责人信息,应急联系人手机号等。 3,小程序信息填写 (1)小程序的APPID、名称,会自动显示,然后需要选服务标识,选择是否包括“互联网信息服务前置审批项”内容。 (2)若存在前置审批项(小程序从事新闻、出版、药品和医疗器械、网约车等),需提供业务对应前置审批文件。 (3)还需要填写小程序负责人信息,包括证件、手机号、应急手机号、邮箱,需要负责人人脸核身。 4,平台初审 平台将会在1-2个工作日内完成初审。 审核结果将以站内信、模板消息等形式通知管理员。 需保持相关人员电话畅通,平台可能会进行核验。 5,工信部短信核验 初审通过后,会收到工信部发送的核验短信(来自12381); 你需要24小时内登录工信部备案首页完成短信核验。 核验成功后,备案进入通管局审核流程。 6,通管局审核 各省通信管理局将在1~20个工作日内完成审核。 审核结果以站内信、模板消息、短信等形式通知。 7,备案成功 管局审核通过后,将下发的小程序备案号。 三、相关证件与资料 1,个人主体 身份证(正反面上传,大小不超过200K,分辨率不低于15001100,证件有效期大于1个月) *通讯地址 *手机号(会验证码确认) *应急手机号(不得与负责人手机号相同) *人脸核身(背景应为纯白色,不遮挡面部) 2,非个人主体 *营业执照(或组织机构代码证等主体证件) *通讯地址 *负责人身份证 *负责人手机号(会验证码确认) *应急手机号(不得与负责人手机号相同) *负责人 人脸核身(背景应为纯白色,不遮挡面部) *涉及前置审批的,还需准备前置审批相关材料 四、其他 1,与网站ICP备案流程相似,可以参考。 2,小程序备案是免费的。 3,或许社区会出现小程序备案的小主页(然而并没有)。 4,建议关注社区负责备案问题的官方专员:小程序运营专员-wwen 5,存量小程序(即2023年9月4日前已上架发布的)的备案开放时间可能会在10月份,以官方通知为准。 6,当日备案小程序数量存在系统限制,估计备案的太多了。 7,即刻起小程序备案必须先进行微信认证才可以(官方理由是整治虚假备案与提交)。 8,服务商代备案接口:传送门 9,提示手机号不允许被多人使用,这是指同一个人允许为多个小程序备案,可以提交一致的手机号及邮箱,但不能出现不同人共用手机号/邮箱的情况。 10,提示同一主体不能同时备案多个。 是因为若备案主体从未在管局备案过,需首个备案小程序审核通过后才可以进行下一个小程序备案。 11,备案号会出现在小程序更多资料中,无需开发人员自行放置。 12,若近期新建企业,或近期有做信息变更,企业工商数据更新可能有延迟,建议过段时间(5~15天)再试。 13,若个体工商户无公章,需要主体负责人手写日期+签名+盖手印+身份证号码,同时请在主体备注处备注“个体工商户无公章”。 14,当个人主体小程序备案申请人的身份证证件地址与申请小程序备案的省份不一致时,需要提供暂住证或居住证等证明材料。 涉及省份包括:吉林、上海、江苏、浙江、安徽、山东、湖北、广东、四川、贵州、云南。 15,小程序备案主体负责人必须填写法定代表人吗? [图片] 16,负责人姓名已填写为小程序管理员的姓名,为什么还是提示:负责人与小程序管理员不一致? 出现这种提示一般都是第三方服务商协助创建的小程序未完善管理员实名信息,需补充管理员实名信息后才能进行备案,补充指引参考: 小程序MP后台-成员管理-管理员-修改。 验证原管理员-填写原管理员身份证信息-扫码验证。 绑定新管理员-填写【原管理员的信息】并提交,即完成管理员实名信息补充。 *请以官方文档、通知为准。 (2023.09.21)
2023-10-13 - rich-text里支持a标签?
我看官方文档里,rich-text是有a标签的,但是实际是无效的,那么其实这个a标签究竟有没有用呢?[图片] [图片] [图片] 点击链接无反应。
2017-07-16 - 第三方平台授权提示refer错误?
https://mp.weixin.qq.com/safe/bindcomponent?action=bindcomponent&no_scan=1&component_appid=wx9047b03144dccd05&pre_auth_code=preauthcode@@@_wZHZ7PXGyVuwE5QxbE6Hh7qOKPjankwQvZ1-KopYz7ca8yJYlYovc78WEWt7Q1xotZYN9HG3gLBkXrsyPmzIw&redirect_uri=http://api.shijihuaxingroup.com/callback&auth_type=1 [图片]有没有大佬知道这个是怎么回事啊
2021-11-16 - 小程序onUnload中使用wx.navigateTo跳转页面时会有过渡页出现
小程序onUnload页面卸载生命周期中使用wx.navigateTo跳转页面时会有过渡页出现,, 小程序onUnload页面卸载生命周期中使用wx.redirectTo跳转页面时会有过渡页出现,,且关闭的不是跳转的当前页面,而是关闭的是过渡页,整个页面栈都乱拉!!!!! 在onUnload页面卸载生命周期中跳转页面,,这个bug很明显,忘官方尽早完善
2018-06-28 - 推荐一个自定义导航栏开源库
前言大家都知道官方提供的小程序导航栏相对有限,那么我们如何应对产品大大无限的需求呢? 那么肯定就需要自定义导航栏,而今天我要给大家推荐一款很棒的自定义导航栏开源项目。 少啰嗦,看效果。⬇️ 看效果[图片] [图片][图片] [图片] [图片] [图片] [图片] 看属性[图片] 如何使用?配置 app.json 中的 navigationStyle 和 usingComponents { "window": { "backgroundTextStyle": "light", "navigationBarBackgroundColor": "#fff", "navigationBarTitleText": "自定义导航栏", "navigationBarTextStyle": "black", "navigationStyle": "custom" }, "usingComponents": { "navBar": "/components/navBar/navBar" }, "sitemapLocation": "sitemap.json" } 页面代码: 上地址地址:https://github.com/lingxiaoyi/navigation-bar
2020-08-21 - 第三方平台代小程序实现业务-提交审核-返回61003?
第三方平台代小程序实现业务-提交审核 返回信息:错误代码:61003, 错误信息:component is not authorized by this account rid: 5fe1a0b4-5f655088-47aa9f6b,微信原始报文:{"errcode":61003,"errmsg":"component is not authorized by this account rid: 5fe1a0b4-5f655088-47aa9f6b"} 在操作前,用户扫码授权码授权,这是什么情况出现的?求解
2020-12-22 - 某高校电子校友卡开发笔记
电子校友卡小程序可以自由进出校园,方便校友返校聚会。还有更多功能与福利上线,敬请期待~ 1 注册认证· 进入小程序: · 完成用户认证 · 点击【立即前往】申请电子校友卡 [图片] 2 填写校友信息 根据实际情况填写就读经历与信息 · 照片请上传清晰、近期、免冠证件照片 · 等待审核 [图片] 3 审核完成审核通过 · 展示该界面可以进出校园 [图片] 4 审核不通过· 如果您填写的信息有误或有信息更新,请及时联系管理员更改 [图片] 5 点击电子校友卡,可生成图片 [图片] 6 后台管理 [图片] [图片] 7 整体架构图
2021-11-12 - 如何接入卡包里的票证?
请问如何接入微信里卡包里的票证? 开发文档里只看到有会员卡,没有看到证件的。我们需要添加一个类似身份证的一个证件,请问该如何接入? 小程序主体是有政府背景的。
2021-04-06 - 如何接入微信公众平台开发
在微信开放社区发现了不少同学都卡在token验证失败了,很多都是代码写的有问题,本人没碰到过代码写对还失败的 ---- 本文只介绍验证服务器地址,其它功能不做描述。---- 接入概述 接入微信公众平台开发,开发者需要按照如下步骤完成: 填写服务器配置(不做描述) 验证服务器地址的有效性 依据接口文档实现业务逻辑(不做描述) 校验规则: 将token、timestamp、nonce三个参数进行字典序排序 将三个参数字符串拼接成一个字符串进行sha1加密 开发者获得加密后的字符串可与signature对比,标识该请求来源于微信 详细文档链接,请参考:https://developers.weixin.qq.com/doc/offiaccount/Basic_Information/Access_Overview.html 校验规则很简单,照着规则来就行了。 项目都是本地的,服务器URL需要外网80端口,所以用了natapp或者花生壳,具体怎么使用百度一下就可以了。 写了两个版本的java、nodejs,问题大多数都是java同学。为了方便演示没有提取工具类,token也是没有写在配置文件中,仅供参考。 java spring boot示例代码 修改application.yml [代码]server.port=80[代码] [图片] nodejs egg示例代码 修改config.default.js [代码]config.cluster = { listen: { path: "", port: 80, hostname: "" } }[代码] port改成80端口 egg https://eggjs.org/zh-cn/intro/quickstart.html [图片] 代码经过验证的,都是可以通过token验证的,有问题还没解决或者准备接入认证同学,可以参考一下代码,少走弯路 补充:golang版本 [图片] © 2019 BINNIE 吉祥 严禁做笔记
2019-12-31 - 非微信环境网页如何拉起微信登录
前言:微信网页登录文档 A https://developers.weixin.qq.com/doc/offiaccount/OA_Web_Apps/Wechat_webpage_authorization.html B https://developers.weixin.qq.com/doc/oplatform/Website_App/WeChat_Login/Wechat_Login.html 1、 检测网页环境 https://www.cnblogs.com/wangtz/p/12538850.html 2、 若pc调用 上面B的API即可实现 3 、若h5调用 则需要调以下的链接格式 https://open.weixin.qq.com/sns/explorer_broker?appid=wx62ba64796e13f092&redirect_uri=https%3A%2F%2Faccount.xiaomi.com%2Fpass%2Fsns%2Flogin%2Fload&response_type=code&scope=snsapi_userinfo&state=STATE_685333#wechat_redirect 4、小米案例 a、登录链接 https://account.xiaomi.com/pass/serviceLogin?callback=https%3A%2F%2Fsupport.kefu.mi.com%2Fsts%3Fsign%3DjorTe2AgW3OD2juZGL2HJC73mjQ%253D%26followup%3Dhttp%253A%252F%252Fsupport.kefu.mi.com%252Fpage%252Findex%252Fv2%253Ftag%253Dcn%2526token%253DY24ud2ViLm1pLmh0dHBzLm1vYmlsZSNyZWZlcmVy%2526productId%253D9452%2526goodsId%253D2191000003&sid=mcc_chat_fe b、pc拦截 https://open.weixin.qq.com/connect/qrconnect?appid=wxa21de3acc0d5e79b&redirect_uri=https%3A%2F%2Fsns.account.xiaomi.com%2Fpass%2Fsns%2Flogin%2Fload&response_type=code&scope=snsapi_login&state=STATE_889829#wechat_redirect c、h5的拦截链接 https://open.weixin.qq.com/sns/explorer_broker?appid=wx62ba64796e13f092&redirect_uri=https%3A%2F%2Faccount.xiaomi.com%2Fpass%2Fsns%2Flogin%2Fload&response_type=code&scope=snsapi_userinfo&state=STATE_685333#wechat_redirect 附:参考案例博客 https://blog.csdn.net/tiantian082054/article/details/90711900 https://www.jianshu.com/p/a1f357152dca 备注:主来自一位社区开发者的问题解决的整理:https://developers.weixin.qq.com/community/develop/doc/0004caea6a836871524a7402156000
2020-05-21 - 微信收款码长按识别支付
场景描述:微信收款码,放置在网页,用户可通过长按识别进行支付 问题描述:之前一直没有问题,就最近两天出现以下情况 1、长按识别后,底部菜单出现“识别收款码” 后,瞬间消失 变为“搜一搜” 2、收款码 在微信聊天记录中,识别都正常,放在网页中不行 请问这是什么问题?应该怎么解决?
2022-01-20 - Appid绑定secapi/mch/addsubdevconfig访问不通?
小微商户增加对应appid 这个接口访问不通,具体要怎么才能访问通?证书是怎么用的?求大佬解惑。
2022-12-05 - 服务商二级商户,小微商户进件有更新了新的接口吗?
问题:近期客户提交小微商户进件后,提示请按最新的文档要求进件! 查了下微信的更新日志,没有找到小微商户进件改了什么规则,辛苦老板们指点一二; ps:查了下竞品,竞品在小微商户进件的时候增加了手持证件拍照的必填项,请问和这个有关系吗?
2022-07-08 - 普通服务商进件个人微小商户?
麻烦问一下,普通服务商可以进件个人微小商户吗,必须得是电商平台才可以吗? 普通服务商 商户进件:https://pay.weixin.qq.com/wiki/doc/apiv3_partner/apis/chapter11_1_1.shtml 上述文档描述不支持进件个人微小商户 电商平台二级商户进件:https://pay.weixin.qq.com/wiki/doc/apiv3_partner/apis/chapter7_1_1.shtml
2023-02-18 - 小微商户进件?
请教下,查看了下小微的有关文档,说是接口还开着,但是需要小微的权限才能调,相关权限查看是在这里查看吗?如果没有此权限的话,还能不能申请,有查看到别的帖子说可以开通电商收付通,这个需要什么门槛吗?没有什么概念,烦请大佬解答下[图片]
2022-02-11 - 特约商户的小微商户如何配置APPID?
我们是服务商,在为特约商户APPID配置的时候发现一个问题,当特约商户的类型为小微商户的时候,关联更多商户号的时候无法登陆商户后台,也就没办法完成确认动作; [图片] [图片]
2022-02-15 - 微搭低代码xChatGPT,五步搭建AI聊天机器人小程序
[图片] ChatGPT最近大火,让原本已经沉寂许久的AI领域再次被唤醒狂欢。但是还是有很多朋友受限于OpenAI对国内用户的限制,无法愉快地体验这项革命性的AIGC技术。 众所周知,ChatGPT 是一个基于 GPT-3 的聊天机器人模型,能够通过分析提问内容生成流畅的自然语言结果,我们除了可以在 OpenAI 的ChatGPT官网上体验,也可以通过调用官方API来获取 ChatGPT 机器人模型进行训练和体验。 本文将向您展示如何使用低代码工具,在30分钟左右搭建一个基于 ChatGPT 的聊天机器人小程序。一方面能让拥有OpenAI账号的朋友能随时随地体验ChatGPT;另一方面,也希望通过教程学习搭建出AI聊天小程序,去分享给更多人,把前沿的AI技术普惠到更广泛的群体,一起体验AIGC技术所带来的便利。 我们这次就以腾讯云微搭低代码作为搭建平台,来演示一下应该如何快速开发一个基于ChatGPT的聊天机器人应用,即便是新手开发者也可以试试哦 一、准备工作 在开始搭建聊天机器人之前,您需要做以下准备: 微信小程序账号:如果您还没有微信小程序账号,可以在微信公众平台注册(如果没有小程序,也可以发布为移动端H5应用) 开通腾讯云微搭低代码:微搭低代码是腾讯云官方推出的一款快速搭建应用的低代码开发工具,可以直接访问腾讯云微搭官网免费开通注册 OpenAI账号:OpenAI账号注册也是免费的,不过OpenAI有地域限制,这里网上教程关键词搜索一大把,就不做赘述了。注册成功后,可以登录OpenAI的个人中心来获取[代码]API KEY[代码] 本教程适用人群和应用类型: 适用人群:初级开发者(操作门槛较低,有一定技术背景的非开发者也可以体验) 应用类型:小程序 或 H5应用(基于微搭一码多端特性,也可以直接发布为Web应用,点击文末链接可体验作者微搭搭建的Web版GPT聊天机器人) 二、搭建聊天机器人 首先,一个常见的聊天对话机器人应用界面效果,如下图所示: [图片] 通过应用界面可以看到,它主要由如下几个部分组成: 一个对话聊天界面 一个API数据查询接口 界面UI与后端数据的联动渲染 那现在,我们就参照上面的几个模块,正式开始通过微搭低代码工具,分5个步骤来依次拆解搭建: 1.对应用界面进行样式配置 [图片] 我们先拖入一个滚动容器和一个普通容器,一个用来展示聊天的上下文对话,一个用来展示输入框和发送按钮。然后依次拖入图中大纲树所示的组件,组件相应的层级关系可以参考上图中的大纲树结构。 接下来针对上述的组件分别进行样式的配置,我们默认使用样式面板的弹性(Flex)布局,包含接收消息和发送消息两个普通容器,可以分别选择样式面板中的弹性布局中的左对齐,如下图所示: [图片] 接着可以分别配置图片和文本两个组件的高度和宽度大小以及内外间距,以达到想要的视觉效果。 完成聊天上下文对话框的样式配置之后,可以进行底部多行输入框和按钮这个普通容器的样式配置,样式配置方式与上面的发送消息容器一样使用弹性布局并选择“平分”的方式布局,如下图所示: [图片] 完成布局配置之后,由于底部输入框按钮等是固定位置的,故需要额外配置一下定位属性,选中底部的“普通容器”,在样式面板底部,做如下配置即可: [图片] 以上,通过进一步微调一些样式细节如组件背景色以及间距等后,即可达到上文提到的应用界面效果了。 可以看到整个页面的配置过程是完全可视化操作的,不需要写一行代码。当然,如果样式配置不是很熟悉,或者有疑问的朋友,也可以等我们的视频教程,手把手教你用微搭低代码来配置AI聊天应用。 2. 配置数据变量和数据源API 第2步,开始进行数据的绑定和数据源的配置: a. 新建一个数组对象变量chatList,用于存储聊天记录 [图片] 首先配置一个变量,如命名为chatLlist聊天记录这么一个变量,一个对象数组,默认值为如下所示,当然大家也可以基于这个结构任意修改。 [代码][ { "res": "你好,欢迎体验ChatGPT聊天机器人,你可以直接输入你感兴趣的任何问题向我提问", "req": "红孩儿是牛魔王的亲儿子吗?", "index": 1 }, { "res": "不是,红孩儿是牛魔王的养子。据西游记中的记载,牛魔王是一个孤独的怪物,他在深山里住了很久,没有子女,却有一个养子——红孩儿,红孩儿的父母去世时,牛魔王便收养了他。", "req": "那谁教他的三味真火", "index": 2 } ] [代码] 接着把这个数组变量的初始值跟我们的这个页面的内容分别进行绑定。首先我们选择一个父级的普通容器,在属性配置的循环展示绑定为刚刚新建的数组变量。然后在里面的子节点中,如文本组件,分别绑定这个数组中的成员变量,他们的配置如下图所示: [图片] [图片] 这一步数据绑定完成之后,接下来就可以去配置请求远程数据的数据源API了。 b. 配置一个数据源APIs(用于请求Chat GPT接口) API的配置相对比较简单,主要参考OPENAI的官方文档,文档中可以看到文本对话接口对应的请求参数信息如下: [代码]curl https://api.openai.com/v1/completions \ -H "Content-Type: application/json" \ -H "Authorization: Bearer YOUR_API_KEY" \ -d '{"model": "text-davinci-003", "prompt": "Say this is a test", "temperature": 0, "max_tokens": 7}' [代码] 分别把上方的CURL请求头信息对应到HTTP的请求中即可,配置项参考如下: [图片] 我们通过数据源中的【方法测试】,得到API的返回结果如下,点击【出参映射】即可完成出参结构的配置: [代码]{ "id": "cmpl-GERzeJQ4lvqPk8SkZu4XMIuR", "object": "text_completion", "created": 1586839808, "model": "text-davinci:003", "choices": [ { "text": "\n\nThis is indeed a test", "index": 0, "logprobs": null, "finish_reason": "length" } ], "usage": { "prompt_tokens": 5, "completion_tokens": 7, "total_tokens": 12 } } [代码] 其中的[代码]API_KEY[代码]是在完成OPENAI账号注册之后,在其个人中心中获取即可,至于OPENAI的账号注册方式,大家动动手搜索一下,网上教程很多就不啰嗦了。 3. 给发送按钮绑定请求事件 我们在第1步中已经在页面中放置了输入框、按钮和文本展示等组件。接下来,我们需要给输入框配置相关的事件响应逻辑,来获取用户输入的消息内容,参考的关键配置如下: [图片] 然后,给按钮绑定事件来处理输入框中用户发送的消息,选择按钮组件,在右侧事件面板中配置如下逻辑,即 点击按钮 时触发API请求,并将获取到的API返回结果渲染在页面中。 [图片] 4. 将API返回数据 与 在页面中进行渲染展示 第4步,将返回值用“变量赋值”方法加入到chatList数组中 [图片] 这里我们需要在数据中增加一条新的消息,采用表达式绑定的方式进行原有的[代码]ChatList[代码]变量进行解构后再赋值,表达式参考如下: [代码][ ...$page.dataset.state.chatList, { req: $page.dataset.state.text, res: "" } ] [代码] 5. 完成开发,进行应用发布 前端界面和后端数据逻辑都配置开发完成后,可在应用编辑器的右上角点击“发布”按钮,我们可以选择发布到 已绑定的小程序,也可以直接发布移动端的H5应用,如下所示: [图片] 至此,一个基础的AI聊天机器人应用搭建就完成了。 三、进一步完善 基于上述步骤搭建完聊天机器人小程序后,你还可以进一步完善它的功能。 例如,您可以在小程序中添加聊天记录功能,让用户可以查看过往的聊天记录。您也可以使用其他自然语言处理技术;例如语音识别和文本分类,来使聊天机器人更加智能。 如需要存储聊天历史记录的话,可以在数据源中配置一个“聊天历史记录”数据模型,参考模型配置如下: [图片] 总之,使用微搭低代码搭建聊天机器人小程序,对于熟悉低代码或者喜欢钻研能力的朋友来说,确实是一件非常简单而有趣的事情。当然如果确实对界面样式配置不是很熟悉,或者其他有疑问的朋友,也可以关注漫话开发者公众号后续视频教程,手把手教你用微搭低代码来配置AI聊天机器人应用。 通过本教程的介绍,你已经基本熟悉了如何使用微搭低代码快速搭建基于 ChatGPT 的聊天机器人了,有任何疑问也欢迎关注漫话开发者公众号留言。点击右侧链接,可以立即体验作者搭建的Web版GPT聊天机器人。 也欢迎关注「漫话开发者」低代码系列文章: 微信支付x低代码,快速构建支付类小程序实操教程 小程序消息推送x微搭低代码,微信消息推送快速上手实操教程 四、附录Q/A 腾讯云微搭低代码平台,连接微信和企微用户,帮助企业快速定制和构建移动协同办公应用,让信息和流程流转更高效。3分钟可视化搭建和发布小程序、H5、Web等多端应用。快速搭建企业专属的业务管理平台,表单流程等办公和管理类应用,提供企业级账号和权限管控等能力。 在搭建聊天机器人应用过程中,你可能会遇到一些问题,下面是常见问题的解决方法: i. 机器人无法回复:这可能是因为 ChatGPT 机器人模型无法理解用户的问题。可以尝试使用更加具体的问题,或者尝试使用不同的自然语言处理模型。 ii. 机器人回复不流畅:这可能是因为 ChatGPT 机器人模型生成的回复不够流畅或在服务器在境外所致。可以尝试调整模型的「[代码]temperature[代码]」参数,使生成的回复更加流畅。 iii. 机器人回复内容不准确:这可能是因为 ChatGPT 机器人模型无法理解用户的问题,或者因为模型没有学习到足够的知识。可以尝试使用更加具体的问题,或者尝试使用不同的自然语言处理模型。 iv. 如果遇到其他低代码配置问题,可以尝试在微搭社区或通过网上搜索中寻求帮助。 点击右侧链接,可以立即体验作者搭建的Web版聊天机器人 最后,上述教程文本都通过ChatGPT校验,enjoy~
2023-02-09 - 小程序人脸识别相关问题
a:官方的人脸核身接口是否有使用次数限制?接口暂无上限要求,普通用户人脸识别每天次数是在3-50次不等,针对部分高安全级别的业务的要求和配置,也会降低限制次数。b:官方的人脸核身接口是否收费,后台显示收费调用次数是什么作用?官方的人脸核身接口目前免费,后续是否收费请留意官方渠道。 人脸核身是有成本的,这里展示的是我们付费成本,也是希望告诉用户,我们协助承担了成本。 c:为什么人脸核身没有申请入口?人脸核身是有资质要求的,资质不符的暂时无法开通。具体请参考(注:一二级类目需完全符合)https://developers.weixin.qq.com/community/business/doc/000442d352c1202bd498ecb105c00d d:人脸识别返回90100|90105|90107|100102|90199|90101什么原因? 这是客户端的错误,请求没到后台的,有几点建议: 1、确认摄像头等权限是授予了;2、杀掉微信重启试试;3、下载更新微信客户端版本 e:getimage接口返回48001,提示没权限? 获取图片接口已经停止申请 f:小程序可以接入腾讯云的人脸核身吗? 可以的
2022-05-10 - 微信人脸核身接口能力
一、能力背景 近年来,国家在医疗挂号、APP注册、快递收寄、客运、运营商等多领域规定,需要用户实名才可办理业务,预计后续也会有越来越多的此类法规。因此,微信参照公安部“互联网+”可信身份认证服务平台标准,依托腾讯公司及微信的生物识别技术,建立微信“实名实人信息校验能力” ,即通过人脸识别+权威源比对,校验用户实名信息和本人操作(简称微信人脸核身)。 目前接口限定主体及行业类目开放公测,提供给资质符合要求的业务方,在合适的业务场景内使用。目前仅支持持二代身份证的大陆居民。 由于人脸核身功能涉及到用户的敏感、隐私信息,因此调用此接口的小程序,需要满足一定的条件。即:小程序的主体以及类目,需要在限定的类目范围内,且与小程序的业务场景一致。开展的业务也需要是国家相关法规、政策规定的需要“实名办理”的相关业务(其他未在范围内的业务,则暂不支持)。 以下为接口接入及开发的详细内容。如开发中遇到任何疑问,可以点击此处通过社区反馈,将有工作人员跟进回复。 文档第四部分【再次获取核验结果api】,有助于提高业务方安全性,请务必接入! 现阶段微信人脸核验能力,针对小程序,开放的主体类目范围包含: 小程序一级类目 小程序二级类目 小程序三级类目 使用人脸核验接口所需资质 物流服务 收件/派件 / 《快递业务经营许可证》 物流服务 货物运输 / 《道路运输经营许可证》(经营范围需含网络货运) 教育 学历教育(学校) / (2选1):1、公立学校:由教育行政部门出具的审批设立证明 或 《事业单位法人证书》;2、私立学校:《民办学校办学许可证》与《民办非企业单位登记证书》 医疗 公立医疗机构 / 《医疗机构执业许可证》与《事业单位法人证书》 医疗 互联网医院 / 仅支持公立医疗机构互联网医院(2选1):1、卫生健康部门的《设置医疗机构批准书》;2、 《医疗机构执业许可证》(范围均需含“互联网诊疗”或名称含“互联网医院”等相关内容 医疗服务 三级私立医疗机构 / 仅支持三级以上私立医疗机构,提供《医疗机构执业许可证》、《营业执照》及《医院等级证书》 政务民生 所有二级类目 / 仅支持政府/事业单位,提供《组织机构代码证》或《统一社会信用代码证》。 金融业 银行 / (2选1):1、《金融许可证》; 2、《金融机构许可证》。 金融业 信托 / (2选1):1、《金融许可证》; 2、《金融机构许可证》。 金融业 公募基金 / (4选1):1、《经营证券期货业务许可证》且业务范围必须包含“基金”;2、《基金托管业务许可证》; 3、《基金销售业务资格证书》;4、《基金管理资格证书》。 金融业 证券/期货 / 《经营证券期货业务许可证》 金融业 保险 / (8选1):1、《保险公司法人许可证》;2、《经营保险业务许可证》;3、《保险营销服务许可证》;4、《保险中介许可证》;5、《经营保险经纪业务许可证》;6、《经营保险公估业务许可证》或《经营保险公估业务备案》;7、《经营保险资产管理业务许可证》 ;8、《保险兼业代理业务许可证》。 金融业 消费金融 / 银监会核准开业的审批文件与《金融许可证》与《营业执照》 金融业 汽车金融 / 仅支持汽车金融主体,同时提供:1、《营业执照》(公司名称包含“汽车金融” ;营业范围包含“汽车金融”业务);2、《金融许可证》或银保监会及其派出机构颁发的开业核准批复文件 交通服务 网约车 快车/专车/其他网约车 (自营性网约车)提供《网络预约出租汽车经营许可证》。(网约车平台)提供与网约车公司的合作协议以及合作网约车公司的《网络预约出租汽车经营许可证》。 交通服务 航空 / (航司)提供《公共航空运输企业经营许可证》。(机场)提供《民用机场使用许可证》或《运输机场使用许可证》。 交通服务 公交/地铁 / 提供公交/地铁/交通卡公司《营业执照》 交通服务 水运 / (船企)提供《水路运输许可证》。(港口)提供《港口经营许可证》 交通服务 骑车 / 仅支持共享单车,提供共享单车公司《营业执照》 交通服务 火车/高铁/动车 / 仅支持铁路局/公司官方,提供铁路局/公司《营业执照》 交通服务 长途汽车 / (2选1):1、《道路运输经营许可证》(经营范围需含客运);2、官方指定联网售票平台(授权或协议或公开可查询文件)。 交通服务 租车 / 运营公司提供《备案证明》与对应公司《营业执照》,且营业执照中包含汽车租赁业务 交通服务 高速服务 / 仅支持ETC发行业务,(2选1):1、事业单位主体,需提供《事业单位法人证书》;2、官方指定的发行单位(一发单位),需提供“官方授权或协议,或公开可查询的文件”; 生活服务 生活缴费 / (供电类)提供《电力业务许可证》与《营业执照》,且《营业执照》且经营范围含供电。(燃气类)提供《燃气经营许可证》与《营业执照》,且《营业执照》且经营范围含供气。(供水类)提供《卫生许可证》与《营业执照》。(供热类)提供《供热经营许可证》与《营业执照》,且《营业执照》且经营范围含供热。 IT科技 基础电信运营商 / (2选1):1、基础电信运营商:提供《基础电信业务经营许可证》;2、运营商分/子公司:提供营业执照(含相关业务范围)。 IT科技 转售移动通信 / 仅支持虚拟运营商,提供《增值电信业务许可证》(业务种类需含通过转售方式提供移动通信业务) 旅游服务 住宿服务 / 仅支持酒店,提供《酒店业特种行业经营许可证》 商业服务 公证 / 仅支持公证处,提供《公证处执业许可证》或《事业单位法人证书》 社交 直播 / (2选1):1、《信息网络传播视听节目许可证》;2、《网络文化经营许可证》(经营范围含网络表演)。 如对以上类目或资质有疑问,可点击参考小程序“非个人主体开放的服务类目”,详细了解小程序开放的服务类目及对应资质。 二、准备接入 (请在小程序发布后,再提交人脸核身接口申请) 满足第一节中描述的类目和主体的小程序,可申请微信人脸核验接口。目前微信人脸核身接口已改为线上自助申请方式,需按照如下图例指引,进行接口申请: 第一步:请通过mp.weixin.qq.com登录小程序账号在后台“功能-人脸核身”的路径,点击开通按钮—— [图片] 第二步:仔细查阅《人脸识别身份信息验证服务条款》后,点击“同意并下一步”—— [图片] 第三步:请正确填写服务信息,并上传该小程序类目下所要求的资质—— [图片] 第四步:请按照业务实际需求填写使用人脸接口的场景和用途—— [图片] 第五步:请完善测试信息和联系人—— [图片] 第六步:提交后请耐心等待1-3个工作日的审核期,审核结果将以站内信通知—— 如申请期间遇到问题,可联系腾讯工作邮箱 wx_city@tencent.com,将会有相关工作人员进一步指引。 三、接口文档: (一)接口描述 名称: wx.startFacialRecognitionVerify(OBJECT) 功能:请求进行基于生物识别的人脸核身 验证方式:在线验证 兼容版本: 一闪:android 微信7.0.22以上版本, iOS 微信7.0.18以上版本 建议在微信官网升级至最新版本 (二)参数说明 1、OBJECT参数说明: 参数 类型 必填 说明 name String 是 姓名 idCardNumber String 是 身份证号码 success Function 否 调用成功回调 fail Function 否 调用失败回调 complete Function 是 调用完成回调(成功或失败都会回调) 2、CALLBACK返回参数 参数 类型 说明 errMsg String 错误信息 errCode Number 错误码 verifyResult String 本次认证结果凭据,第三方可以选择根据这个凭据获取相关信息 注 1:传递用户姓名和身份证有两种方式 业务方没有用户实名信息,用户需要在前端填写身份证和姓名,那么前端直接通过jsapi 调用传递 name 和 idCardNumber。 业务方已经有用户实名信息,后台通过微信提供的 api(详情见文档后面“上传姓名身份证后台 api”)上传用户身份证姓名和身份证,api 返回 user_id_key 作为凭证传给前端,前端再调用 jsapi,用户姓名、身份证信息不需要经过前端,参数只需要传递 userIdKey。Tips:使用该功能需要小程序基础库版本号>=1.9.3。 3、回调结果说明 回调结果请参考以下释义: [图片] [图片] [图片] 4、示例代码 [图片] [图片] (三)上传用户姓名身份证的后台api 1、API说明 1.1说明 业务方上传用户姓名和身份证,获取用户凭证,把凭证给到前端通过 jsapi 调用。 Tips :使用该功能需要小程序基础库版本号>=1.9.3。 1.2请求URL https://api.weixin.qq.com/cityservice/face/identify/getuseridkey?access_token={ac cess_token} 1.3请求方式 POST 2、请求数据格式 [代码]Json { "name" : “张三”, "id_card_number" : "452122xxxxxxx43215" } [代码] 请求示例 [代码]#!/bin/bash TOKEN='xxxxxxxxxxxx' URL='https://api.weixin.qq.com/cityservice/face/identify/getuseridkey' JSON='{ "name": "张三", "id_card_number": "452344xxxxxxxxxxxxx234"}' curl "${URL}?access_token=${TOKEN}" -d "${JSON}" [代码] 参数说明 json 字段 中文显示 是否必传 name 姓名 是 id_card_number 身份证号码 是 out_seq_no 业务方唯一流水号 否 3、返回数据 参数 类 型 说明 errcode int 错误码 errmsg string 错误信息 user_id_key string 用于后台交互表示用户姓名、身份证的凭证 expires_in uint32 user_id_key 有效期,过期需重新获取 [代码]{ "errcode" : 0, "errmsg" : "ok", "user_id_key" : "id_key_xxxx", "expires_in": 3600 } [代码] 4、后台消息推送 如果业务方传入out_seq_no,核身完成后会通过消息推送回调给业务方的服务器,如果回调业务方失败,会在5s尽力推送,超过5s不再推送。 参数说明 参数 类 型 说明 ToUserName string 小程序原始ID FromUserName string 事件消息openid CreateTime uint32 消息推送时间 MsgType string 消息类型 Event string 事件类型 openid string 核身用户的openid out_seq_no string 业务方唯一流水号 verify_result string 核身返回的加密key(凭据) 返回示例 [代码]{ "ToUserName": "gh_81fxxxxxxxx", "FromUserName": "oRRn15NUibBxxxxxxxxx", "CreateTime": 1703657835, "MsgType": "event", "Event": "face_identify", "openid": "oRRn15NUibBxxxxxxxxx", "out_seq_no": "test1234", "verify_result": "XXIzTtMqCxwOaawoE91-VNGAC3v1j9MP-5fZJxv0fYT4aGezzvYlUb-n6RWQa7XeJpQo0teKj8mGE4ZcRe1JI3GqzADBYORBu613rKjKAFfEXTXw_bu1bs7MnmPOpguS" } [代码] 四、再次获取核验结果api 此接口是前端完成人脸核身后,基于前端返回的凭据,通过后台api再次进行核验结果和身份信息的校验,有助于提高安全性,请务必接入! 前端获取结果不可信,存在被篡改的风险,为了保障请求结果安全性,请务必对identify_ret、id_card_number_md5、name_utf8_md5字段进行校验! (一)API说明 1、说明 人脸核身之后,开发者可以根据jsapi返回的verify_result向后台拉取当次认证的结果信息。 2、请求URL https://api.weixin.qq.com/cityservice/face/identify/getinfo?access_token={access_token} 3、请求方式 POST 4、请求格式 json (二)请求数据说明 1、请求 参数 类型 是否必填 描述 verify_result String 是 jsapi返回的加密key(凭据) 2、数据返回 HTTP 头如下 Date: Mon, 06 Feb 2017 08:12:58 GMT Content-Type: application/json; encoding=utf-8 Content-Length: 85 Connection: close json示例 [代码]{ "errcode" : 0, [代码] [代码]"errmsg" : "ok", "identify_ret" : 0, "identify_time" : 1486350357 "validate_data": "8593" [代码] [图片] (三)返回参数说明 1、返回参数 注:errcode和identify_ret同时为0,代表本次认证成功。 参数 类型 描述 errcode int 错误码, 0表示本次api调用成功 errmsg string 本次api调用的错误信息 identify_ret int 人脸核身最终认证结果 identify_time uint32 认证时间 validate_data string 用户读的数字(如是读数字) openid string 用户openid user_id_key string 用于后台交互表示用户姓名、身份证的凭证 finish_time uint32 认证结束时间 id_card_number_md5 string 身份证号的md5(最后一位X为大写) name_utf8_md5 string 姓名MD5 2、错误码对应信息 errcode 备注 84001 非法identity_id 84002 用户信息过期 84003 用户信息不存在 五、小程序辅助接口:检查设备是否支持人脸检测 1、接口名称 接 口 :wx.checkIsSupportFacialRecognition(OBJECT) 功能:检查设备是否支持人脸检测 2、接口说明和使用 小程序调用该接口,可以检测当前手机设备是否具备支持人脸检测的能力,可与以上接口分开使用,为了用户体验,建议调用后对手机设备不支持的用户做对应功能处理。 3、接口说明和使用 01 OBJECT 参数说明: 参数 类型 是否必填 描述 success Function 否 调用成功回调 fail Function 否 调用失败回调 complete Function 是 调用完成回调(成功或失败都会回调) checkAliveType Number 否 人脸核验的交互方式,默认读数字(见表 2) 表 2:checkAliveType 的值和对应的解释: 参数 解释 2 先检查是否可以屏幕闪烁,不可以则自动为读数字 02 CALLBACK 返回参数 参数 类型 说明 errMsg Boolean 错误信息 errCode Number 错误码 03 回调结果说明 回调类型 ErrCode 说明 sucess 0 支持人脸采集 fail 10001 不支持人脸采集:设备没有前置摄像头 fail 10002 不支持人脸采集:没有下载到必要模型 fail 10003 不支持人脸采集:后台控制不支持 回调结果说明仅对Android生效,iOS不返回errcode。 04 示例代码 [图片] 六、安全性说明 为保障业务可用性以及安全性,请详细研读微信人脸核身接口相关基础说明及安全说明文档:https://docs.qq.com/doc/DTFB0YWFIdGV6amly 备注:如开发中遇到任何疑问,可以点击此处通过社区反馈,将有工作人员跟进回复。 七、案例展示及补充说明 安徽医科大学第二附属医院,微信人脸核验登录: 安徽医科大学第二附属医院,是三级甲等综合医院。其小程序为用户提供挂号、门诊费用、住院费用、检查报告、体检等医疗服务,同时也提供停车、餐饮等便民服务,是医疗小程序中完整的案例。 小程序使用了微信人脸核验能力作为登录的核验。满足医院管理要求,也满足国家对于实名就医的管理规则。 案例实现的截图效果如下: [图片] [图片] 针对近期少数小程序方面反馈的两类问题,也在本课程进行补充说明。 1、本接口的开放范围,即:可支持的主体类目,是否可以扩大? 说明:基于本接口整体使用范围的评估、相关法规的参考、监管策略的理解执行等,暂时未立刻进行扩大开放范围的工作。 但我们会持续基于不同行业的法规、政策及监管要求等,逐一进行研究考量,以便确认如何扩大开放范围。 2、小程序如果涉及用户本人的生物特征采集,(如本人人脸照片、人脸视频),或涉及采集用户本人生物特征信息并开展人脸核验功能,则存在被驳回的情况? 说明:近两年“人脸识别”技术在社会上掀起了热潮。人脸识别虽然作为摆脱“中间媒介”或“承载载体”的一种直接技术手段,解决了部分政务、交通、医疗、零售等证明“操作者是本人”的问题,但也因此,引入了新的更大的安全风险。 一是,虚假安全风险。 身份认证领域的安全三因素包括“我知道什么”、“我拥有什么”、“我的特征是什么”,通用的安全做法,是要双因素认证(2FA),人脸识别技术如仅凭“我的特征是什么”这一个因素,则容易被攻破或利用。表象给用户以安全的感觉,但实际并不能达到安全效果。 二是,信息泄漏的风险。 越来越多的组织或个人,在并非必需用户敏感信息、生物特征的情况下,采集并存储此类信息。在信息加密、传输、存储过程中,容易暴漏更多的网络节点,使得此类信息有更大的风险被网络黑客拦截、窃听、窃取,或直接被脱库。 三是,消除风险的难度大。 以往基于“中间媒介”或“承载载体”的方式,如出现丢失、被冒用、恶意盗用等风险,可以通过挂失、更换、使用新载体或新媒介等方式,快速排除一定的风险。C端主动,B端主动,都能解决一部分问题。但人脸识别做为更直接的方式,一旦出现冒用、盗用,受害者将面临更大的财产及人生安全风险,且C端用户更多时候无法主动消除风险。 基于以上问题风险,加之国家出台《网络安全法》、《用户隐私保护条例》等法律法规标准,网信办、公安部、工信部及市场监管总局等四部委发起的app获取隐私整治,结合平台安全、用户敏感隐私信息保护要求及监管,针对部分暂无相关法规或要求,需要采集或生物认证方式进行身份核验的,或以“追热点”或“尝鲜”为目的,采集用户生物特征或进行身份核验的,进行严格审核,必要时不予以支持。
06-26 - webview里的背景音乐,在退出时,怎么关闭
小程序里使用里webview组件,组件里放的网页有背景音乐。当退出小程序时,这个背景音乐还在播放。能否有办法做到,当退出小程序,背景音乐就没有了?
2017-12-04 - webview如何监听h5内部跳转地址?
webview 里如何监听h5内部的链接跳转,当webview嵌套h5列表时,如何获取h5列表跳转了h5详情的链接地址,刷新状态
2022-12-21 - 微信浏览器内嵌h5网页无法存储cookie?
你好,请问一下,我们开发的h5网页,其他机型和浏览器都可以存储cookie,但是iphone11,10的时候就丢失了cookie,请问有木有api文档还是微信浏览器设置了权限?后端做了个重定向跳转到前端页面,这个页面是存储cookie的。 1、链接=》2、后端做重定向=〉3、前端页面=》4、存储cookie,根据cookie登录识别状态,跳转到对应页面。 现在2-3之间出了问题,想问一下,社区的大佬们有遇到吗,可以指导一下吗?
2021-12-23 - 公众平台/小程序服务端API的access_token的内部设计
一、背景 对于使用过公众平台的API功能的开发者来说,access_token绝对不会陌生,它就像一个打开家门的钥匙,只要拿着它,就能使用公众平台绝大部分的API功能。因此,对于开发者而言,access_token的使用方式就变得尤其的重要。在日常API接口的运营中,经常遇到各种的疑问:为什么我的access_token突然非法了?为什么刚刚拿到的access_token,用了10min就过期了?对于这些疑问,我们提供出access_token的设计方案,便于开发者对access_token使用方式上的理解。 对于access_token的获取,可以参考公众平台的官方文档:auth.getAccessToken、获取Access token 二、access_token的内部设计 2.1 access_token的时效性 众所周知,access_token是通过appid和appsecret来生成的。内部设计的步骤如下: (1)开发者通过https请求方式: GET https://API.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid=APPID&secret=APPSECRET,传入appid及apppsecret的参数 (2)公众平台后台会校验appid和哈希(appsecret)是否与存储匹配,若匹配,结合当前时间戳,生成新的access_token。 (3)生成新的access_token的同时,会对老的access_token的过期时间戳更新为当前时间戳。 (4)返回新的access_token给开发者。 这里以图示的方式说明一下,新旧token交替过程: [图片] 从上图需要注意的几点: (1)公众平台存储层只会存储新老两个access_token,意味着假设开发者重复调用3次接口,则会导致最早的access_token立刻失效。 (2)虽然请求新的access_token后,老的access_token过期时间会更新为当前时间,但也不会立刻失效,原理请参考 【2.2 access_token 的逐渐失效性】 (3)出于信息安全考虑,公众平台并不会明文存储appsecret,仅存储appid以及appsecret的哈希值。因此开发者要妥善保管appsecret。当appsecret疑似泄露时,需要及时登录mp.weixin.qq.com重置appsecret。 2.2 access_token 的逐渐失效性 从【access_token的时效性】了解到,当开发者请求获取新的access_token时,老的access_token过期时间会被更新为当前时间,但此时不会立刻失效,因为公众平台会提供【5分钟的新老access_token交替缓冲时间】,因此也称为access_token 的逐渐失效性。 实现的原理是: 1. 由于老的access_token过期时间戳已被刷新,所以在API接口请求期间,带上的access_token解开后,过期时间戳会加上5分钟,然后和当前设备时间进行比对,若超过当前设备时间,判断为失效。 2. 公众平台的设备会保持时钟同步,但设备之间仍然可能会存在1-2分钟的时间差异,所以【5分钟】并非绝对的时间值。当开发者获取到新的access_token后应该尽快切换到新的access_token。 [图片] 从上图需要注意的几点: (1)由于存在设备时间同步的差异,可能会导致开发者遇到拿着老的access_token请求API接口,部分请求成功,部分请求失败的情况,建议开发者获取到新的access_token后尽快使用。 (2)通过理解两个图示,对开发者来说,access_token是相当关键且不能乱调的接口,建议开发者统一管理access_token,以免造成多次请求导致access_token失效。
2021-05-11 - 微信公众号H5开发中localStorage和cookie失效问题
原来我们的登陆平台登陆信息存储在cookie中,发现一些手机cookie会几个小时时间失效(我们种的cookie是一个月失效),后来我们将登陆信息在localStorage中同样存储一遍,发现有个别用户localStorage同样会失效
2018-11-08 - 微信jssdk分享出去的是一个连接?
微信版本是8.0.16,手机是华为手机 鸿蒙系统, jssdk用的是1.6.0的版本,用的方法是updateAppMessageShareData j具体操作流程是 从企业微信的应用里分享到微信地址,使用的是企业微信的分享jssdk,在微信端显示的是正常的,打开分享的页面后在用上面的方法分享到另外一个 微信就变成了http连接了有人遇到过这个问题么?
2022-01-17 - 分享链接,该链接域名或路径必须与当前页面对应的公众号JS安全域名一致 是什么意思
公众号 :‘分享链接,该链接域名或路径必须与当前页面对应的公众号JS安全域名一致‘,是什么意思?是说地址完全必须一样?还是说只要分享页面的域名和分享出去的链接域名一样就可以,路径可以不同吗?这中文说的模棱两可
2018-08-24 - 微信视频号如何申请拉流直播?
微信视频号如何申请拉流直播?或者推流直播?
2021-06-21 - 小程序能链接跳转到微信里面的直播间吗?或者第三方的直播间
需要开发这个需求,现在在开发的小程序由于没有小程序直播的资质,所以为了完成这个小程序能让用户体验,实现看到直播内容。小程序能链接微信里面微信直播板块的直播间吗?(并不是需要开通这个小程序的直播间),或者能不能链接,链接跳转别的第三方的直播间,来实现让用户看见直播内容。跪求解决办法!
2021-08-07