这个库是一个基于 Moya 的超简单的 APIClient。
将下面这行添加到你的 Package.swift
中。
.package(url: "https://github.com/fummicc1/MoyaAPIClient", .upToNextMajor(from: "1.1.0")),
并使用 MoyaAPIClient
库。
.product(name: "MoyaAPIClient", package: "MoyaAPIClient"),
APITarget
(APITarget
遵循 Moya.TargetType
)import Moya
public enum APIRequest {
case index(text: String)
}
extension APIRequest: APITarget {
public var baseURL: URL {
URL(string: "https://example.com")!
}
public var path: String {
switch self {
case .index:
return "/"
}
}
public var method: Moya.Method {
switch self {
case .index:
return .get
}
}
public var task: Moya.Task {
switch self {
case let .index(text):
return .requestParameters(
parameters: [
"text": text
],
encoding: URLEncoding.default
)
}
}
public var headers: [String : String]? {
nil
}
}
public struct Response: Decodable {
public let results: [Result]
}
public extension Response {
struct Result: Decodable {
// ...
}
}
let request: APIRequest = .index(text: "message")
let resppnse: Response = try await request.send()
欢迎提交 Pull Request、错误报告和功能请求 🚀