Callable
适用于 Decodable 的类型安全的 Firebase HTTPS Callable Functions 客户端。
安装
pod 'Callable'
使用方法
定义端点和响应
您需要定义扩展了 Decodable
的 Response
。
- path
- Callable HTTPS 触发器的名称。
- parameter
- 传递给触发器的参数。
struct SampleResponse: Decodable {
let name: String
}
struct Sample: Callable {
typealias Response = SampleResponse
let name: String
init(name: String) {
self.name = name
}
var path: String {
return "httpcallable"
}
var parameter: [String: Any]? {
return ["name": name]
}
}
调用端点
如果请求成功,将返回 Response
类型。
let sample = Sample(name: "Jobs")
sample.call { result in
switch result {
case .success(let resonse):
print(resonse)
case .failure(let error):
print(error)
}
}
- 可调用错误
- 函数(Error)
- 服务器抛出错误或结果promise被拒绝。
- 解码(Error)
- 解码失败
- 非法组合(Any?, Error?)
- 结果和错误都存在,或为nil
- 函数(Error)