微信小程序 开放能力学习
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# ...
随机推荐
- let 命令 与 var的区别
ES6 新增了let命令,用来声明变量.它的用法类似于var,但是所声明的变量,只在let命令所在的代码块内有效. <script> { let a = 10; var b = 1; } ...
- fuse的编译安装(Centos7-minimal)
打算寒假在家跟着THU的一个分布式系统的课程:http://thu-cmu.cs.tsinghua.edu.cn/curriculum/dscourse/schedule.htm 第0个lab就是要在 ...
- UVA-11549(floyd判圈算法)
题意: 给一个整数k,每次平方后只能显示结果的前n位,问在这个过程中能得到的最大的数是多少; 思路: floyd判圈算法;它的正确性建立在这得到的这些数是有限的,所以一定是一个循环,在这个循环的圈里面 ...
- Snowflake算法 ID生成
Snowflake算法 ID生成 http://blog.csdn.net/w200221626/article/details/52064976 使用UUID或者GUID产生的ID没有规则 Snow ...
- Css之cursor 属性
url 需使用的自定义光标的 URL. 注释:请在此列表的末端始终定义一种普通的光标,以防没有由 URL 定义的可用光标. default 默认光标(通常是一个箭头) auto 默认.浏 ...
- zepto.js 总结
zepto.js 中的注意事项 ,详见:http://www.cnblogs.com/samwu/archive/2013/06/06/3121649.html zepto被弃用的原因:详见:http ...
- SCUT - 48 - 飞行员的配对方案 - 费用流
https://scut.online/p/48 一道二分图匹配,跑费用流就可以过了(其实最大流都可以了). #include<bits/stdc++.h> #define MAXN_ 5 ...
- Codeforces Round #422 (Div. 2)D. My pretty girl Noora(递推+数论)
传送门 题意 对于n个女孩,每次分成x人/组,每组比较次数为\(\frac{x(x+1)}{2}\),直到剩余1人 计算\[\sum_{i=l}^{r}t^{i-l}f(i)\],其中f(i)代表i个 ...
- 洛谷P4199 万径人踪灭(manacher+FFT)
传送门 题目所求为所有的不连续回文子序列个数,可以转化为回文子序列数-回文子串数 回文子串manacher跑一跑就行了,考虑怎么求回文子序列数 我们考虑,如果$S_i$是回文子序列的对称中心,那么只要 ...
- SpringSercurity基础
创建 spring 配置文件 spring-security.xml intercept-url 表示拦截页面 /* 表示的是该目录下的资源,只包括本级目录不包括下级目录 /** 表示的是该目 ...