iOS学习笔记iosiOS精华文章

iOS微信登录集成

2017-05-13  本文已影响4409人  丶阿沐

忙忙碌碌一个月,忘记更新文章了,今天补上。

前言:

微信登录集成可以参考微信开放平台移动应用接入指南与微信github开源Demo,介绍的都很详细。本文简单介绍一下集成过程,及需要注意的地方(在最后哦)。
微信开放平台:http://open.weixin.qq.com

微信开放平台
github地址:http://github.com/Tencent/WeDemo 微信github开源项目

一、准备工作


1.在微信·开放平台申请微信开放平台微信登录AppID、AppSecret

如AppID:wx9740xxxxxxxxxxxx
AppSecret:53495fb2e31dxxxxxxxxxxxxxxxxxxxx

2.下载iOS微信SDK将SDK添加到工程目录中

微信SDK

3.添加依赖的库文件

微信SDK依赖库

4.添加URL Type

URL Type

5.添加URL Schemes白名单

URL Schemes白名单

二、集成工作

通用流程:

1.向微信注册app;

2.应用内触发登录;
3.打开微信获取授权authorization_code
4.使用authorization_code、AppID、AppSecret获取access_token
5.使用access_token获取微信部分个人信息

1.向微信终端程序注册第三方应用,并在第三方应用实现从微信返回,在AppDelegate.m中引入"WXApi.h"头文件。添加如下代码
向微信注册第三方应用
2.在控制器中添加登录代码,触发向微信请求授权
向微信请求授权
参数说明
参数说明
3.添加授权登录成功通知,向微信请求授权被处理后会回调到此方法
授权回调
4.在控制器中实现授权登录成功之后的回调,授权登录成功之后获取access_token
使用授权code获取access_token
5.使用access_token获取微信部分个人信息,获取到用户信息之后,更新到己方App中登录用户的信息即可。
获取微信部分个人信息

项目微信登录流程

1.向微信注册app
2.应用内触发登录
3.打开微信获取授权authorization_code
4.调用Web服接口上传authorization_code和AppID,由Web服发起对微信用户信息的请求,成功后转为loginUser下发客户端

AppSecret是应用接口使用密钥,access_token为用户授权第三方应用发起微信接口调用凭证,泄露后可能导致应用数据、用户数据泄露等高风险后果,存储在客户端,极有可能被恶意窃取。
出于安全考虑,项目中微信登录流程中,使用微信推荐的方式,客户端不持有微信AppSecret,只持有微信AppID用于注册应用请求授权。AppSecret存于Web服务端,客户端通过AppID获取到微信授权authorization_code,调用Web服接口传给Web服。通用微信登录流程中的步骤4、5,交由服务端处理请求微信接口,获取微信部分个人信息,转换为loginUser下发。

上一篇 下一篇

猜你喜欢

热点阅读