Protocol
API
public protocol API: AnyObject
配置请求的全局函数
Relationships
Conforms To
AnyObject
Default Implementations
RequestSuccessHandle
public typealias RequestSuccessHandle<M:Model> = (_ model:M) -> Void
请求成功的回掉函数
Parameters
Name | Type | Description |
---|---|---|
model | 请求成功的模型(基于 |
RequestFailureHandle
public typealias RequestFailureHandle = (_ code:Int, _ message:String) -> Void
请求失败的回掉函数
Parameters
Name | Type | Description |
---|---|---|
code | 失败的错误吗 |
|
message | 错误的原因 |
request(type:config:success:failure:)
public static func request<M:Model, A:APIConfig>(type:M.Type,
config:A,
success:RequestSuccessHandle<M>?,
failure:RequestFailureHandle?)
发起一个请求(成功和失败回掉设置为可选值,是为了允许只发送请求不需要关心成功还是失败)
Parameters
Name | Type | Description |
---|---|---|
type | M.Type |
请求的模型类型 |
config | A |
发起请求的实例(基于 |
success | RequestSuccessHandle<M>? |
发起请求成功的回掉 |
failure | RequestFailureHandle? |
发起请求失败的回掉 |
uploadFile(type:config:fileData:success:failure:)
public static func uploadFile<M:Model, A:APIConfig>(type:M.Type,
config:A,
fileData:Data,
success:RequestSuccessHandle<M>?,
failure:RequestFailureHandle?)
上传文件服务
Parameters
Name | Type | Description |
---|---|---|
type | M.Type |
接收模型的类型 |
config | A |
上传接口的配置 |
fileData | Data |
上传的数据 |
success | RequestSuccessHandle<M>? |
上传成功的回掉 |
failure | RequestFailureHandle? |
上传失败的回掉 |
Requirements
host
static var host:String
设置请求的Host
如果在Xcode
中设置变量HOST
则优先使用变量HOST
,否则就使用设置的请求host
defaultHeadersConfig
static var defaultHeadersConfig:((_ headers:inout HTTPHeaders) -> Void)?
配置默认Headers
-
headers: 当前请求
header