iOS微信授權登錄+Universal Link(通用鏈接)
微信平臺
Univac
后臺需求
踩坑
1、iOS 配置微信SDK锻煌,需要喚醒微信App
先配置json文件,把文件apple-app-site-association,放置在服務器的根目錄,然后讓他提供一個https的url地址,格式是“正式域名/apple-app-site-association”,如:https://www.baidu.com/apple-app-site-association
点额。
如果后臺提供的url地址是
https://www.baidu.com/apple-app-site-association
钾挟。那么洁灵,
Associated Domains
中填寫applinks:www.baidu.com
,
代碼注冊方法及微信開放平臺中都填https://www.baidu.com/
{
"applinks": {
"apps": [],
"details": [
{
"appID": "teamID.BundleID",
"paths": [ "/support/*" ]
}
]
}
}
2、微信SDK返回來的code 每次都不一樣徽千。
- 方法1
后臺服務器可以自己通過code 和微信配置通過2個接口自己獲取UnionID - 方法2
App自己通過2個接口獲取UnionID
獲取 UnionID 的2個接口
// 通過 code 獲取 access_token 和 openid
// appid 微信配置識別號
// secret 微信配置密鑰
// code 微信SDK返回
// grant_type 填 authorization_code
GET https://api.weixin.qq.com/sns/oauth2/access_token?appid=APPID&secret=SECRET&code=CODE&grant_type=authorization_code
// access_token 接口調用憑證
// openid 授權用戶唯一標識
{
"access_token": "ACCESS_TOKEN",
"expires_in": 7200,
"refresh_token": "REFRESH_TOKEN",
"openid": "OPENID",
"scope": "SCOPE"
}
// 獲取用戶個人信息(UnionID 機制)
// access_token openid 上個接口獲取
GET https://api.weixin.qq.com/sns/userinfo?access_token=ACCESS_TOKEN&openid=OPENID
// nickname 普通用戶昵稱
// sex 普通用戶性別
// province 普通用戶個人資料填寫的省份
// city 普通用戶個人資料填寫的城市
// country 國家苫费,如中國為 CN
// headimgurl 用戶頭像
// unionid 用戶統(tǒng)一標識。針對一個微信開放平臺帳號下的應用双抽,同一用戶的 unionid 是唯一的百框。
{
"openid": "OPENID",
"nickname": "NICKNAME",
"sex": 1,
"province": "PROVINCE",
"city": "CITY",
"country": "COUNTRY",
"headimgurl": "http://wx.qlogo.cn/mmopen/g3MonUZtNHkdmzicIlibx6iaFqAc56vxLSUfpb6n5WKSYVY0ChQKkiaJSgQ1dZuTOgvLLrhJbERQQ4eMsv84eavHiaiceqxibJxCfHe/0",
"privilege": ["PRIVILEGE1", "PRIVILEGE2"],
"unionid": " o6_bmasdasdsad6_2sgVt7hMZOPfL"
}