依赖lean cloud的注册与登录
前言
实现登录注册的基本功能,没有添加手机验证和邮箱验证的功能,有相应的方法,如果需要,可以自己加上其相应的方法
github的网址:
效果图:




正文
1.导入leancloud相应的第三方,这个等我再写一个博客告诉大家怎么用,leancloud的官方文档也都有写,官方网址:https://leancloud.cn/?
2.在你注册的leancloud里创建一个应用,那到appkey写到Appdelegate.m中,在这个应该中你就可以看见注册你的app的用户信息了.
3.当你布置好页面以后,我的习惯先写注册功能,先创建一个用户AVUser
//1.创建一个用户
AVUser *user = [AVUser user];
user.username = userName;
user.password = passWord; //2.注册的方法
[user signUpInBackgroundWithBlock:^(BOOL succeeded, NSError *error) {
NSLog(@"lls");
if (succeeded) { //3.如果注册成功就直接登陆 NSLog(@"注册成功"); }else{ NSLog(@"注册失败");
} }];
4.注册成功的话,要调用登录的方法
//1.登陆的方法
[AVUser logInWithUsernameInBackground:userName password:passWord block:^(AVUser *user, NSError *error) { //有用户
if (user != nil) { //2.登陆成功,去根视图
AppDelegate *app = [UIApplication sharedApplication].delegate; RootViewController *rootVC = [[RootViewController alloc] init];
UINavigationController *rootNC = [[UINavigationController alloc] initWithRootViewController:rootVC]; app.window.rootViewController = rootNC; }else{ } }];
5.基本功能完成了,开始解决问题
1)不能每次都让你的用户登录,如果之前登录了,再次启动时不用用户再次登录,写一个判断方法,之前用block回调通知是否登录了,
isLoginBlock(YES);
isLoginBlock(NO);
2)知道是否登录后,需要知道用户名和密码和用户id让他自动登录,所以之前应该保证到本地数据
//把信息存在本地
NSUserDefaults *defaults = [NSUserDefaults standardUserDefaults];
//存放
[defaults setObject:user.username forKey:@"userName"];
[defaults setObject:user.objectId forKey:@"objectId"];
[defaults setObject:user.password forKey:@"password"]; [defaults setObject:@"YES" forKey:@"isLogin"];
3)如果block的结果是YES,就当本地取数据,之后更换你的根视图
//在本地取
NSUserDefaults *userDegaults = [NSUserDefaults standardUserDefaults];
//就是之前登陆了
if ([[userDegaults objectForKey:@"isLogin"] isEqualToString:@"YES"]) { [UserManager shareUser].userName = [userDegaults objectForKey:@"userName"];
[UserManager shareUser].passWord = [userDegaults objectForKey:@"password"];
[UserManager shareUser].userId = [userDegaults objectForKey:@"objectId"]; RootViewController *rootVC = [[RootViewController alloc] init];
self.window.rootViewController = rootVC;
4)如果block的结果是NO,根视图就是登录页面
miaomiaocat小语
注册登录方法思路应该有很多,这仅代表我自己的想法,当然有很多不足,也需大家一个帮助更改,欢迎评价.
依赖lean cloud的注册与登录的更多相关文章
- Spring Cloud Eureka 注册安全一定要做到位!
/eureka/ 参考配置如下: defaultZone: http://javastack:javastack@eureka1:8761/eureka/, http://javastack:java ...
- Vue.js——使用$.ajax和vue-resource实现OAuth的注册、登录、注销和API调用
概述 上一篇我们介绍了如何使用vue resource处理HTTP请求,结合服务端的REST API,就能够很容易地构建一个增删查改应用.这个应用始终遗留了一个问题,Web App在访问REST AP ...
- Spring Cloud Eureka 注册中心集群搭建,Greenwich 最新版!
Spring Cloud 的注册中心可以由 Eureka.Consul.Zookeeper.ETCD 等来实现,这里推荐使用 Spring Cloud Eureka 来实现注册中心,它基于 Netfl ...
- Vue.js——使用$.ajax和vue-resource实现OAuth的注册、登录、注销和API调用
转自:https://www.cnblogs.com/keepfool/p/5665953.html 概述 上一篇我们介绍了如何使用vue resource处理HTTP请求,结合服务端的REST AP ...
- spring cloud 服务注册中心eureka高可用集群搭建
spring cloud 服务注册中心eureka高可用集群搭建 一,准备工作 eureka可以类比zookeeper,本文用三台机器搭建集群,也就是说要启动三个eureka注册中心 1 本文三台eu ...
- Net Core Identity 身份验证:注册、登录和注销 (简单示例)
一.前言 一般我们自己的系统都会用自己设置的一套身份验证授权的代码,这次用net core的identity来完成简单的注册.登录和注销. 二.数据库 首先就是创建上下文,我这里简单的建了Users和 ...
- Spring Cloud Gateway注册到服务器中心(Consul)
Spring Cloud Gateway注册到服务器中心(Consul) 准备环境 启动Consul(./consul agent -dev)作为服务中心,默认是8500端口,然后启动spring-c ...
- 一 注册功能&登录功能,权限拦截
注册功能: 前端JSP:提供表单注册信息以及访问路径,发送请求到Strus2. Struts2 : 通过模型驱动接收并封装User对象,Spring依赖注入(无参构造+setter方法)获取业务层Us ...
- Bootstrap实战 - 注册和登录
一.介绍 注册和登录在社交和商业网站中是必不可少的一个部分. 二.知识点 2.1 标签页 2.1.1 基础标签页 标签页的使用与导航栏类似,同时都依赖于基础样式 nav,不同的是附加样式变成了 nav ...
随机推荐
- Xcode7 新添旧版模拟器方法
http://blog.csdn.net/xiaoluodecai/article/details/48649697 更新了最新的Xcode后,总是仅保留最新的模拟器,如iOS9.0,如果此时想添加以 ...
- MySQL show slave status命令参数
? Slave_IO_State SHOW PROCESSLIST输出的State字段的拷贝.SHOW PROCESSLIST用于从属I/O线程.如果线程正在试图连接到主服务器,正在等待来自主服务器的 ...
- coreGraphs和动画
http://www.jianshu.com/p/b71c3d450e8e http://blog.csdn.net/volcan1987/article/details/9969455 http:/ ...
- 百度api集合!
百度 api集市免费接口 IP地址查询 http://apistore.baidu.com/apiworks/servicedetail/114.html 频道新闻API_易源 http://apis ...
- LPC2478内存布局以及启动方式
LPC2478 是NXP公司推出的一款基于APR7TDMI-S的工控型MCU,内置RAM与flash,同时提供外部扩展flash和ram接口,拥有LCD控制器,其内存布局如下所示 其中Flash高达5 ...
- Java 基础类型转换byte数组, byte数组转换基础类型
Java 基础类型转换byte数组, byte数组转换基础类型 Java类型转换 java类对象转化为byte数组
- JdbcTemplate的主要用法
JdbcTemplate主要提供以下五类方法: execute方法:可以用于执行任何SQL语句,一般用于执行DDL语句: update方法及batchUpdate方法:update方法用于执行新增.修 ...
- ARM交叉编译工具链分类说明
转载整理自:http://www.veryarm.com/cross-tools 从授权上,ARM交叉编译工具链分为免费授权版和付费授权版. 免费版目前有三大主流工具商提供,第一是GNU(提供源码,自 ...
- JV的DOM操作
一.基本概念 :是文档对象模型,这种模型为树模型:文档指标签文档:对象是指文档中每个元素:模型是指抽象化的东西. :.Windows对象操作:.属性:opener:(打开当前窗口的原窗口.)dialo ...
- js实现从字符串中查找出现次数最多的字符的两种解决办法
方法一:正则表达式匹配 var str = "adadfdfseffserfefsefseeffffftsdg"; ; var result = ""; whi ...