Flutter圈子FlutterFlutter

使用 apifm 插件进行 Flutter 云开发——微信一键登

2019-09-27  本文已影响0人  fe1e31171ab2

在你的 App 中集成手机微信一键授权(注册)登录功能,达到快速注册、快速登录功能
按照本教程的操作指引,预计5分钟即可帮你实现并掌握微信登录的实现


用户管理

微信开放平台创建应用

https://open.weixin.qq.com

前往微信开放平台,创建一个移动应用的接入,审核通过后,你就可以获取到一个 appid 和 secret;
下文中提到的所有 appid 和 secret 都是指的这里的,不是公众号的,不是服务号的,更不是小程序的,千万注意!!

开发者后台配置 appid 和 secret

《使用 apifm 插件进行 Flutter 云开发——安装篇》

开启 “系统参数设置” 模块

  1. 登录 “第一步” 注册的后台,左侧菜单 --> 工厂设置 --> 模块管理
  2. 找到 “系统参数设置” 模块,点击 “启用模块” ,然后 F5 刷新一下后台界面

添加系统参数

  1. 添加文本参数 wx_sns_appid ,参数值填你的 appid ,参数状态位公开参数,flutter 中初始化时候的 appid 可以通过读取系统设置方法读取该值;
  2. 添加文本参数 wx_sns_secret ,参数值填写你的 secret ,参数状态一定要设置为保密参数防止泄露该数据;

安装 Flutter 依赖

pubspec.yaml 文件增加依赖

dependencies:
  fluwx: ^1.0.6

安装依赖

$ flutter pub get

引入 package

在 dart 文件中,引入插件,下面会用到

import 'package:fluwx/fluwx.dart' as fluwx;

调用微信授权

const appid = 'wx4f32d9265f9cf669'; // 这是上面创建应用的 appid
await fluwx.register(appId: appid); // 初始化
fluwx.sendAuth(scope: "snsapi_userinfo", state: "login"); // 呼出微信授权界面
fluwx.responseFromAuth.listen((data) { // 用户操作后的回调
  data.state // 上面传的 state,原路返回
  data.errCode // ERR_OK = 0(用户同意) ERR_AUTH_DENIED = -4(用户拒绝授权) ERR_USER_CANCEL = -2(用户取消)
  data.code // 用户授权后得到的登录临时凭证
});

apifm 方法

微信一键注册

 Apifm.registerWX(Map<String, String> params)

微信的一键注册功能,需要以下参数:

授权后返回的参数:

code

可选参数:

referrer 邀请人,邀请你注册的用户id
postJsonString 注册的扩展信息,Json数据格式

微信一键登录

 Apifm.loginWX(String code)

code 为授权成功后返回的临时凭证

绑定微信一键登录

 Apifm.bindWXOpenid(token, code)

手机号码、用户名等方式注册的用户,通过该方法绑定微信,后期将可以使用微信一键登录

code 为用户授权后返回的临时凭证

本例Flutter源码:

https://github.com/gooking/apifm-flutter-demo

上一篇下一篇

猜你喜欢

热点阅读