Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
DiDi
DoraemonKit
提交
d0067626
D
DoraemonKit
项目概览
DiDi
/
DoraemonKit
10 个月 前同步成功
通知
166
Star
19623
Fork
3062
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
D
DoraemonKit
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
前往新版Gitcode,体验更适合开发者的 AI 搜索 >>
提交
d0067626
编写于
6月 19, 2020
作者:
Y
yixiangboy
提交者:
mizikoi53
9月 17, 2020
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
iOS: 下载接口
上级
088e1bbe
变更
1
隐藏空白更改
内联
并排
Showing
1 changed file
with
36 addition
and
1 deletion
+36
-1
iOS/DoraemonKit/Src/Core/Plugin/Platform/FileSync/Function/DoraemonFileSyncManager.m
...ugin/Platform/FileSync/Function/DoraemonFileSyncManager.m
+36
-1
未找到文件。
iOS/DoraemonKit/Src/Core/Plugin/Platform/FileSync/Function/DoraemonFileSyncManager.m
浏览文件 @
d0067626
...
...
@@ -9,6 +9,7 @@
#import <GCDWebServer/GCDWebServerRequest.h>
#import <GCDWebServer/GCDWebServerDataResponse.h>
#import <GCDWebServer/GCDWebServerMultiPartFormRequest.h>
#import <GCDWebServer/GCDWebServerFileResponse.h>
#import "DoraemonAppInfoUtil.h"
@interface
DoraemonFileSyncManager
()
...
...
@@ -65,6 +66,13 @@
[
self
addHandlerForMethod
:
@"POST"
path
:
@"/uploadFile"
requestClass
:
[
GCDWebServerMultiPartFormRequest
class
]
processBlock
:^
GCDWebServerResponse
*
_Nullable
(
__kindof
GCDWebServerRequest
*
_Nonnull
request
)
{
return
[
weakSelf
uploadFile
:(
GCDWebServerMultiPartFormRequest
*
)
request
];
}];
[
self
addHandlerForMethod
:
@"GET"
path:
@"/downloadFile"
requestClass:
[
GCDWebServerRequest
class
]
processBlock:
^
GCDWebServerResponse
*
_Nullable
(
__kindof
GCDWebServerRequest
*
_Nonnull
request
)
{
return
[
weakSelf
downloadFile
:
request
];
}];
}
-
(
NSString
*
)
getRelativeFilePath
:(
NSString
*
)
fullPath
{
...
...
@@ -142,11 +150,38 @@
NSString
*
rootPath
=
NSHomeDirectory
();
NSString
*
targetPath
=
[
NSString
stringWithFormat
:
@"%@%@%@"
,
rootPath
,
filePath
,
file
.
fileName
];
NSError
*
error
=
nil
;
NSDictionary
*
res
;
if
(
!
[[
NSFileManager
defaultManager
]
moveItemAtPath
:
file
.
temporaryPath
toPath
:
targetPath
error
:&
error
])
{
NSLog
(
@"Failed moving uploaded file to
\"
%@
\"
"
,
targetPath
);
res
=
[
self
getCode
:
0
data
:
nil
];
}
else
{
res
=
[
self
getCode
:
200
data
:
nil
];
}
return
[
GCDWebServerDataResponse
responseWithJSONObject
:@{}];;
GCDWebServerResponse
*
response
=
[
GCDWebServerDataResponse
responseWithJSONObject
:
res
];
[
response
setValue
:
@"*"
forAdditionalHeader
:
@"Access-Control-Allow-Origin"
];
return
response
;
}
-
(
GCDWebServerResponse
*
)
downloadFile
:(
GCDWebServerRequest
*
)
request
{
NSString
*
rootPath
=
NSHomeDirectory
();
NSString
*
relativePath
=
[[
request
query
]
objectForKey
:
@"filePath"
];
NSString
*
fileName
=
[[
request
query
]
objectForKey
:
@"fileName"
];
NSString
*
targetPath
=
[
NSString
stringWithFormat
:
@"%@%@%@"
,
rootPath
,
relativePath
,
fileName
];
NSDictionary
*
res
;
BOOL
isDirectory
=
NO
;
if
(
!
[[
NSFileManager
defaultManager
]
fileExistsAtPath
:
targetPath
isDirectory
:
&
isDirectory
])
{
NSLog
(
@"
\"
%@
\"
does not exist"
,
targetPath
);
res
=
[
self
getCode
:
0
data
:
nil
];
GCDWebServerResponse
*
response
=
[
GCDWebServerDataResponse
responseWithJSONObject
:
res
];
[
response
setValue
:
@"*"
forAdditionalHeader
:
@"Access-Control-Allow-Origin"
];
return
response
;
}
return
[
GCDWebServerFileResponse
responseWithFile
:
targetPath
isAttachment
:
YES
];
}
@end
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录