Skip to content
切换导航条
切换导航条
当前项目
正在载入...
登录
陈高翔
/
DreamSleep-iOS
转到一个项目
切换导航栏
切换导航栏固定状态
项目
群组
代码片段
帮助
项目
活动
版本库
流水线
图表
问题
0
合并请求
0
维基
网络
创建新的问题
作业
提交
问题看板
文件
提交
网络
比较
分支
标签
Commit 9dec1e14
由
cgx
编写于
2022-05-30 10:54:01 +0800
浏览文件
选项
浏览文件
标签
下载
电子邮件补丁
差异文件
优化用户注销账号
1 个父辈
6167454c
显示空白字符变更
内嵌
并排
正在显示
9 个修改的文件
包含
52 行增加
和
55 行删除
DreamSleep/DreamSleep/Basement/Network/DSNetworkTool.h
DreamSleep/DreamSleep/Basement/Network/DSNetworkTool.m
DreamSleep/DreamSleep/Class/AISleepModule/AISleepCoachController.m
DreamSleep/DreamSleep/Class/ProfileModule/Account/Controller/AccountController.m
DreamSleep/DreamSleep/Class/ProfileModule/UserLogin/LoginController.m
DreamSleep/DreamSleep/Class/ProfileModule/UserLogin/LoginUtils.h
DreamSleep/DreamSleep/Class/ProfileModule/UserLogin/LoginUtils.m
DreamSleep/DreamSleep/Class/ProfileModule/UserLogin/UserRequestModel.h
DreamSleep/DreamSleep/Class/ProfileModule/UserLogin/UserRequestModel.m
DreamSleep/DreamSleep/Basement/Network/DSNetworkTool.h
查看文件 @
9dec1e1
...
...
@@ -29,15 +29,17 @@ typedef NS_ENUM(NSInteger, DSResCode) {
+
(
DSNetworkTool
*
)
sharedManager
;
///
/// @param params get、post请求统一使用post body
/// 第三方服务商Post请求
/// @param host 第三方主机地址
/// @param params 请求参数
/// @param view view
/// @param hasNetActivity 是否显示网络状态指示器
/// @param loadingInfo 网络加载信息
/// @param hasFailInfo 是否有失败信息
/// @param success success
/// @param failure failure
+
(
__kindof
NSURLSessionDataTask
*
)
httpPostBodyRequestWithParam
:(
id
)
params
+
(
__kindof
NSURLSessionDataTask
*
)
httpVendorPostRequestWithHost
:(
NSString
*
)
host
params
:(
id
)
params
view
:(
UIView
*
)
view
hasNetActivity
:(
BOOL
)
hasNetActivity
loadingInfo
:(
NSString
*
)
loadingInfo
...
...
DreamSleep/DreamSleep/Basement/Network/DSNetworkTool.m
查看文件 @
9dec1e1
...
...
@@ -29,7 +29,8 @@ NSString * const NetworkUnableError = @"网络不给力,请检查您的网络
return
handle
;
}
+
(
__kindof
NSURLSessionDataTask
*
)
httpPostBodyRequestWithParam
:
(
id
)
params
+
(
__kindof
NSURLSessionDataTask
*
)
httpVendorPostRequestWithHost
:
(
NSString
*
)
host
params
:
(
id
)
params
view
:
(
UIView
*
)
view
hasNetActivity
:
(
BOOL
)
hasNetActivity
loadingInfo
:
(
NSString
*
)
loadingInfo
...
...
@@ -42,37 +43,17 @@ NSString * const NetworkUnableError = @"网络不给力,请检查您的网络
view
?
[
DSProgressHUD
showProgressHUDWithInfo
:
loadingInfo
inView
:
view
]
:
[
DSProgressHUD
showProgressHUDWithInfo
:
loadingInfo
];
}
NSString
*
urlString
=
[
APIURL
stringByAddingPercentEncodingWithAllowedCharacters
:[
NSCharacterSet
URLQueryAllowedCharacterSet
]];
DSLog
(
@"请求链接:%@,业务参数:%@"
,
urlString
,
params
);
NSString
*
urlString
=
[
host
stringByAddingPercentEncodingWithAllowedCharacters
:[
NSCharacterSet
URLQueryAllowedCharacterSet
]];
NSMutableURLRequest
*
request
=
[[
AFJSONRequestSerializer
serializer
]
requestWithMethod
:
@"POST"
URLString
:
urlString
parameters
:
nil
error
:
nil
];
NSData
*
jsonData
=
[
NSJSONSerialization
dataWithJSONObject
:
params
options
:
NSJSONWritingPrettyPrinted
error
:
nil
];
[
request
setHTTPBody
:
jsonData
];
[
request
addValue
:
@"application/json"
forHTTPHeaderField
:
@"Content-Type"
];
DSLog
(
@"Vendor Post请求地址:%@,业务参数:%@"
,
urlString
,
params
);
NSURLSessionDataTask
*
dataTask
=
[[
DSNetworkTool
sharedManager
]
dataTaskWithRequest
:
request
uploadProgress
:
nil
downloadProgress
:
nil
completionHandler
:^
(
NSURLResponse
*
_Nonnull
response
,
id
_Nullable
responseObject
,
NSError
*
_Nullable
error
)
{
[[
UIApplication
sharedApplication
]
setNetworkActivityIndicatorVisible
:
NO
]
;
if
(
loadingInfo
)
{
[
DSProgressHUD
dissmissProgressHUD
];
}
NSURLSessionDataTask
*
dataTask
=
[[
DSNetworkTool
sharedManager
]
POST
:
urlString
parameters
:
params
headers
:
nil
progress
:
nil
success
:^
(
NSURLSessionDataTask
*
_Nonnull
task
,
id
_Nullable
responseObject
)
{
DSLog
(
@"responseObject:%@"
,
responseObject
)
;
}
failure
:^
(
NSURLSessionDataTask
*
_Nullable
task
,
NSError
*
_Nonnull
error
)
{
if
(
responseObject
)
{
NSDictionary
*
responseDic
=
[
NSJSONSerialization
JSONObjectWithData
:
responseObject
options
:
NSJSONReadingMutableContainers
error
:
nil
];
// DSLog(@"服务器返回的原始Json数据:%@", responseDic);
// 接口业务数据
NSDictionary
*
apiDataDic
=
[
responseDic
objectForKey
:
@"data"
];
success
(
apiDataDic
);
}
else
{
DSLog
(
@"失败错误信息:%@"
,
error
);
if
(
hasFailInfo
)
{
NSString
*
alertStr
=
[
NSString
stringWithFormat
:
@"%ld"
,
error
.
code
];
view
?
[
DSProgressHUD
showDetailInfo
:
alertStr
inView
:
view
]
:
[
DSProgressHUD
showDetailInfo
:
alertStr
];
}
failure
(
error
);
}
}];
[
dataTask
resume
];
return
dataTask
;
}
...
...
DreamSleep/DreamSleep/Class/AISleepModule/AISleepCoachController.m
查看文件 @
9dec1e1
...
...
@@ -123,14 +123,14 @@
[
self
startOpen
];
// 注入js代码用于强制刷新小梦睡眠
NSString
*
jsCallBack
=
@"window.parent.location.reload()"
;
[
self
.
aiWebView
evaluateJavaScript
:
jsCallBack
completionHandler
:
^
(
id
_Nullable
result
,
NSError
*
_Nullable
error
)
{
[
self
.
aiWebView
loadRequest
:
self
.
request
];
DSLog
(
@"注入成功..."
);
if
(
error
)
{
DSLog
(
@"err is %@"
,
error
.
domain
);
}
}];
//
NSString *jsCallBack = @"window.parent.location.reload()";
//
[self.aiWebView evaluateJavaScript:jsCallBack completionHandler:^(id _Nullable result, NSError * _Nullable error) {
//
[self.aiWebView loadRequest:self.request];
//
DSLog(@"注入成功...");
//
if (error) {
//
DSLog(@"err is %@", error.domain);
//
}
//
}];
}
}
}
...
...
DreamSleep/DreamSleep/Class/ProfileModule/Account/Controller/AccountController.m
查看文件 @
9dec1e1
...
...
@@ -53,12 +53,6 @@
[
DSProgressHUD
dissmissProgressHUD
];
if
(
requestModel
.
resCode
==
DSResCodeSuccess
)
{
[
self
clearUserData
:
@"退出成功"
];
// 刷新我的个人信息相关数据
// 刷新主页数据
[[
NSNotificationCenter
defaultCenter
]
postNotificationName
:
NeedUpdateHomePage
object
:
nil
];
// 刷新AI睡眠教练
[[
NSNotificationCenter
defaultCenter
]
postNotificationName
:
NeedUpdateAICoach
object
:
nil
];
}
}];
}
...
...
@@ -72,9 +66,6 @@
if
(
requestModel
.
resCode
==
DSResCodeSuccess
)
{
[
self
.
closeAlertView
dismissCloseUserAlertView
];
[
self
clearUserData
:
@"注销成功"
];
// 刷新我的个人信息相关数据
}
}];
}
...
...
DreamSleep/DreamSleep/Class/ProfileModule/UserLogin/LoginController.m
查看文件 @
9dec1e1
...
...
@@ -47,11 +47,8 @@
if
(
requestModel
.
resCode
==
DSResCodeSuccess
)
{
[
DSProgressHUD
showToast
:
@"登录成功"
];
if
(
self
.
successBlock
)
{
self
.
successBlock
();
}
[
LoginUtils
updateDataNotiAfterLoginSuccess
];
[
self
dismissViewControllerAnimated
:
YES
completion
:
nil
];
// 刷新主页数据
[[
NSNotificationCenter
defaultCenter
]
postNotificationName
:
NeedUpdateHomePage
object
:
nil
];
// 刷新AI睡眠教练
[[
NSNotificationCenter
defaultCenter
]
postNotificationName
:
NeedUpdateAICoach
object
:
nil
];
}
else
{
[
DSProgressHUD
showToast
:
requestModel
.
errorInfo
];
}
...
...
@@ -128,11 +125,8 @@
if
(
requestModel
.
resCode
==
DSResCodeSuccess
)
{
[
DSProgressHUD
showToast
:
@"登录成功"
];
if
(
self
.
successBlock
)
{
self
.
successBlock
();
}
[
LoginUtils
updateDataNotiAfterLoginSuccess
];
[
self
dismissViewControllerAnimated
:
YES
completion
:
nil
];
// 刷新主页数据
[[
NSNotificationCenter
defaultCenter
]
postNotificationName
:
NeedUpdateHomePage
object
:
nil
];
// 刷新AI睡眠教练
[[
NSNotificationCenter
defaultCenter
]
postNotificationName
:
NeedUpdateAICoach
object
:
nil
];
}
else
{
[
DSProgressHUD
showToast
:
requestModel
.
errorInfo
];
}
...
...
DreamSleep/DreamSleep/Class/ProfileModule/UserLogin/LoginUtils.h
查看文件 @
9dec1e1
...
...
@@ -58,6 +58,9 @@ NS_ASSUME_NONNULL_BEGIN
/// @param target 入口控制器
/// @param sel 消息
+
(
void
)
jumpToLoginControllerWithTarget
:(
UIViewController
*
)
target
selector
:(
SEL
)
sel
;
/// 登录成功后更新数据通知
+
(
void
)
updateDataNotiAfterLoginSuccess
;
@end
NS_ASSUME_NONNULL_END
DreamSleep/DreamSleep/Class/ProfileModule/UserLogin/LoginUtils.m
查看文件 @
9dec1e1
...
...
@@ -80,8 +80,13 @@
+
(
void
)
clearUserLoginData
{
kUserDefaultsRemoveObj
(
UserBasicInfo
);
// 发送更新用户数据显示UI通知
[[
NSNotificationCenter
defaultCenter
]
postNotificationName
:
HasUpdateUserDataNoti
object
:
nil
];
// 刷新主页数据
[[
NSNotificationCenter
defaultCenter
]
postNotificationName
:
NeedUpdateHomePage
object
:
nil
];
// 刷新AI睡眠教练
[[
NSNotificationCenter
defaultCenter
]
postNotificationName
:
NeedUpdateAICoach
object
:
nil
];
}
+
(
void
)
jumpToLoginControllerWithTarget
:
(
UIViewController
*
)
target
{
...
...
@@ -107,4 +112,11 @@
}
}
+
(
void
)
updateDataNotiAfterLoginSuccess
{
// 刷新主页数据
[[
NSNotificationCenter
defaultCenter
]
postNotificationName
:
NeedUpdateHomePage
object
:
nil
];
// 刷新AI睡眠教练
[[
NSNotificationCenter
defaultCenter
]
postNotificationName
:
NeedUpdateAICoach
object
:
nil
];
}
@end
DreamSleep/DreamSleep/Class/ProfileModule/UserLogin/UserRequestModel.h
查看文件 @
9dec1e1
...
...
@@ -33,6 +33,10 @@ NS_ASSUME_NONNULL_BEGIN
/// @param completion completion
+
(
NSURLSessionDataTask
*
)
closeUserRequestWithCompletion
:(
void
(
^
)(
UserRequestModel
*
requestModel
))
completion
;
/// 撤销用户令牌接口(网页端用)
/// @param completion completion
+
(
NSURLSessionDataTask
*
)
revokeTokensRequestWithParams
:(
NSDictionary
*
)
params
completion
:(
void
(
^
)(
UserRequestModel
*
requestModel
))
completion
;
/// 自动登录请求(用于更新token,登录成功后定期调用)
/// @param completion completion
+
(
NSURLSessionDataTask
*
)
autoLoginRequestWithCompletion
:(
void
(
^
)(
UserRequestModel
*
requestModel
))
completion
;
...
...
DreamSleep/DreamSleep/Class/ProfileModule/UserLogin/UserRequestModel.m
查看文件 @
9dec1e1
...
...
@@ -86,6 +86,16 @@
}];
}
+
(
NSURLSessionDataTask
*
)
revokeTokensRequestWithParams
:(
NSDictionary
*
)
params
completion
:(
void
(
^
)(
UserRequestModel
*
requestModel
))
completion
{
UserRequestModel
*
requestModel
=
[[
UserRequestModel
alloc
]
init
];
return
[
self
httpVendorPostRequestWithHost
:
@"https://appleid.apple.com/auth/revoke"
params
:
params
view
:
nil
hasNetActivity
:
YES
loadingInfo
:
nil
hasFailInfo
:
YES
success
:^
(
NSDictionary
*
responseObj
)
{
}
failure
:^
(
id
failureInfo
)
{
}];
}
+
(
NSURLSessionDataTask
*
)
autoLoginRequestWithCompletion
:(
void
(
^
)(
UserRequestModel
*
requestModel
))
completion
{
UserRequestModel
*
requestModel
=
[[
UserRequestModel
alloc
]
init
];
NSString
*
api
=
@"auto_login"
;
...
...
编写
预览
支持
Markdown
格式
附加文件
你添加了
0
人
到此讨论。请谨慎行事。
Finish editing this message first!
Cancel
请
注册
或
登录
后发表评论