微信小程序 开放能力学习
1. 用户信息
小程序登录
使用微信的个人信息快速搭建用户体系,登录逻辑:小程序向微信获取code 给服务端生成用户。
说明
1. 小程序端调用 wx.login() 获取临时登录凭证 code,并传到服务端。
2. 服务端收到code 之后,调用 code2Session 接口,换取用户唯一标识 OpenID 和 回话密钥 session_key。之后开发服务器可以根据用户标识来生成自定义登录状态,用于后续业务逻辑中前后端交互时识别用户身份。
注意:
1. 回话密钥 session_key 是对用户数据进行加密签名的密钥,不要下发小程序端
2. 临时登录凭证只能用一次,这个特点应该各个平台都差不多。
UnionID 机制说明
只要是同一个微信开发平台账号下的移动应用、网站应用和公众账号,用户 UnionID是唯一的。所以尽可能将小程序绑定微信公众号,以便于识别用户身份。
可以使用 wx. 或者 cloud. 获取 UnionID。
授权
需要授权的接口按照 scope 区分,需要用户统一之后才可以调用。需要处理用户拒绝调用的情况。开发者可以使用 wx.getSetting 获取用户当前的授权状态。小程序端可以主动吊起设置。
开放数据校验与解密
微信会对开放数据进行 签名和加密处理,主要依赖于会话密钥 session_key。再次强调服务端不要把 session_key 传到小程序端和外部环境。
加密和解密 密钥属于服务端内容。
获取手机号
需要使用 wx.login 接口调用,需要使用 <button> 组件触发。并且不能过于频繁
需要避免 wx.login 导致用户信息刷新,应提前获取。
生物认证
指纹认证
2. 转发
转发
当用户进行转发的时候,可以获取相关转发的信息,比如群的标识。可以再页面中设置转发按钮。可以设置转发的图片,默认转发页面截图。
动态消息
发送给用户的消息。状态、文字内容和文字颜色。
3. 打开APP
这里也属于用户主动触发行为,需要使用 button 组件触发。需要客户端装sdk文件配合,主要应用是app内分享到微信的时候,以小程序的形式分享。
有多个场景,注意配合使用。
4. 消息
模板消息
通过服务通知,当用户使用小程序的时候可以触发,并且具备跳转能力。可以获取官方的模板,但是模板消息需要官方审核!!!
统一服务消息
服务消息有统一的接口调用。。。
客服消息
客服和小程序端是两个独立的界面,可以来回切换。还是用 button 点击触发
这个功能应该用的比较少,感觉商城类的需要沟通多一点,但是还是可以使用自助应答。
5. 卡券
认证之后的小程序才可以使用卡券!
可以对用户的卡券进行增删查
还有一个会员卡组件的事情,可以直接调用。
6. 获取小程序码
使用微信提供的接口,生成二维码。这个简单的
7. 数据分析
小程序的管理后台有提供数据分析,以及具体的数据,看起来还不错的样子。主要是趋势,留存,页面访问,自定义数据等。
8. 附近的小程序
这个需要向微信官方申请调高额度,对于需要推广小程序的还是很有必要的
9. 物流助手
微信基本和大多数快递公司合作,如果需要,推荐使用的功能。省事
微信小程序 开放能力学习的更多相关文章
- 微信小程序开发:学习笔记[2]——WXML模板
微信小程序开发:学习笔记[2]——WXML模板 快速开始 介绍 WXML 全称是 WeiXin Markup Language,是小程序框架设计的一套标签语言,结合小程序的基础组件.事件系统,可以构建 ...
- 微信小程序开发:学习笔记[7]——理解小程序的宿主环境
微信小程序开发:学习笔记[7]——理解小程序的宿主环境 渲染层与逻辑层 小程序的运行环境分成渲染层和逻辑层. 程序构造器
- 微信小程序开发:学习笔记[5]——JavaScript脚本
微信小程序开发:学习笔记[5]——JavaScript脚本 快速开始 介绍 小程序的主要开发语言是 JavaScript ,开发者使用 JavaScript 来开发业务逻辑以及调用小程序的 API 来 ...
- 微信小程序开发:学习笔记[4]——样式布局
微信小程序开发:学习笔记[4]——样式布局 Flex布局 新的布局方式 在小程序开发中,我们需要考虑各种尺寸终端设备上的适配.在传统网页开发,我们用的是盒模型,通过display:inline | b ...
- 微信小程序开发:学习笔记[3]——WXSS样式
微信小程序开发:学习笔记[3]——WXSS样式 快速开始 介绍 WXSS(WeiXin Style Sheets)是一套用于小程序的样式语言,用于描述WXML的组件样式,也就是视觉上的效果. WXSS ...
- 微信小程序开发:学习笔记[1]——Hello World
微信小程序开发:学习笔记[1]——Hello World 快速开始 1.前往微信公众平台下载微信开发者工具. 地址:https://mp.weixin.qq.com/debug/wxadoc/dev/ ...
- 微信小程序开发:学习笔记[9]——本地数据缓存
微信小程序开发:学习笔记[9]——本地数据缓存 快速开始 说明 本地数据缓存是小程序存储在当前设备上硬盘上的数据,本地数据缓存有非常多的用途,我们可以利用本地数据缓存来存储用户在小程序上产生的操作,在 ...
- 微信小程序开发:学习笔记[8]——页面跳转及传参
微信小程序开发:学习笔记[8]——页面跳转及传参 页面跳转 一个小程序拥有多个页面,我们可以通过wx.navigateTo推入一个新的页面.在首页使用2次wx.navigateTo后,页面层级会有三层 ...
- 微信小程序开放数据解密 AES-128-CBC 解密(C#版本)
最近在开发小程序,需要跟微信服务端交互,微信敏感数据都有加密返回,需要在服务端接收进行解密后再返回给客户端小程序,今天就通过C# 进行数据的解密,官方下载下来是Node.C++.php等,就是没有C# ...
随机推荐
- Configuring Your EMS Server or EMS Console Server on Windows/Linux
EMS Configuration Files RAD Studio provides the scripts to render the web-browser console, the EMS s ...
- bzoj2436: [Noi2011]Noi嘉年华
我震惊了,我好菜,我是不是该退役(苦逼) 可以先看看代码里的注释 首先我们先考虑一下第一问好了真做起来也就这个能想想了 那么离散化时间是肯定的,看一手范围猜出是二维DP,那对于两个会场,一个放自变量, ...
- vue开发购物车,解决全选单选问题
实现全选单选,在vue中无法通过this获取input中的checkbox的checked属性,但是可以通过vue对input的特殊方式v-model来实现对应数据的绑定,同样也可以通过这种方式实现购 ...
- python读取一个英文文件,并记录每个单词出现的次数,降序输出
对文中出现的句号,逗号和感叹号做了相应的处理 sorted排序函数用法: 按照value值降序排列: sorted(dict.items(),key=lambda k:k[1],reverse=Tru ...
- CSS:清除浮动
周五去听css样式的培训,讲到float导致div不能被撑开的问题,特记录如下: 在写HTML代码的时候,如果有一个DIV作为外部容器,内部的DIV如果设置了float样式,则外部的容器DIV因为内部 ...
- ubuntu下tesseract 4.0安装及参数使用
tesseract是一个开源的OCR引擎,最初是由惠普公司开发用来作为其平板扫描仪的OCR引擎,2005年惠普将其开源出来,之后google接手负责维护.目前稳定的版本是3.0.4.0版本加入了基 ...
- 关于布局(Layout)的一切
之前在布局中有很多问题也有很多经验,遗憾都没记下来.现在一点点记下一些东西. 1.外层用LinearLayout的话,常常把orientation设成vertical, android:orienta ...
- JAVA GUI THREAD---***
针对用户界面的多线程 GUI下面的多线程方式 1.与GUI类分离方式 分离方式,在创建线程类实例时需要代入GUI句柄,通过GUI句柄操作GUI,也就是说线程类和GUI类都要有对方的实例,以便相互操作. ...
- RobotFramework:App滑动屏幕
转自:http://blog.csdn.net/jgw2008/article/details/77993399 在使用Robot Framework测试Android机器过程中, 经常要用到滚屏操作 ...
- ORA-00020: maximum number of processes (xxxx) exceeded 报错解决方法
转自:http://blog.51cto.com/lee90/1788124 今天java开发在连接线上的oracle大量导数据,一会提示连接不上数据库了.我本地用sqldeveloper也连接不上. ...