扫二维码与项目经理沟通
我们在微信上24小时期待你的声音
解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流
官方说的比较详细,但是就是有些重复,而且有很多坑
10年积累的成都网站建设、成都网站设计经验,可以快速应对客户对网站的新想法和需求。提供各种问题对应的解决方案。让选择我们的客户得到更好、更有力的网络服务。我虽然不认识你,你也不认识我。但先网站制作后付款的网站建设流程,更有丰镇免费网站建设让你可以放心的选择与我们合作。
在info.plist中加入安全域名白名单(右键info.plist用source code打开)
在info.plist的NSAppTransportSecurity下新增NSAllowsArbitraryLoads并设置为YES,指定所有HTTP连接都可正常请求
打开app,用第三方登录,发现没有sso授权页面,或打开QQ失败、微信失败、微博失败等
info.plist增加:
在iOS9下就需要增加一个可跳转的白名单,指定对应跳转App的URL Scheme,否则将在第三方平台判断是否跳转时用到的canOpenURL时返回NO,进而只进行webview授权或授权/分享失败。
我们现在的做法的是
使用账号密码登录以后,返回一个登录凭证acckessToken,一个accessToken唯一对应一个账号,将这个acckessToken保存在本地
后续需要登录的地方比如需要取用户信息,直接传这个这个登录凭证acckessToken给后台就可以
acckessToken有一定期限,比如7天,过期了,凭借旧的acckessToken调用刷新acckessToken接口,获取新的凭证或者直接续时间
对发出的请求进行加密,防止别人搞破坏
一般登录模块会进行封装,基本不可能让开发人员有机会获取到账号和密码。
闲话少说,直接上码
登陆developer账号,在app bundle ID的Capabilities里,打勾 Sign In with Apple .
打开Xcode 11.0 Beta或更新版本,在项目设置 - Signing Capabilities 里,开启 Sign in with Apple 选项。
实现分四大部分:
在上面 ASAuthorizationControllerDelegate 的用户通过验证的回调里,可以拿到 credential ,这里面有一些信息值得提下:
授权或者用户信息是有可能被改变的,我们能做到就是尽早的检测出这样的改变,并做以应对。
检测授权的状态需要记录在上面所得到的
在 AppleDelegate 里,把之前存的用户ID放到 ASAuthorizationAppleIDProvider 里验证即可,可以得到几种用户授权状态:
如果有错误欢迎指出,也欢迎各种讨论,谢????!
我们在微信上24小时期待你的声音
解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流