Slide 15
Slide 15 text
ͱΓ͋͑ͣॻ͍ͯΈΔɻ
15
extension APIManager {
// ίϛοΫͷҰཡΛऔಘ͢ΔAPI
static func comicList(parameter: ComicListRequest,
success: @escaping (ComicListResponse) -> Void,
failure: @escaping (Error) -> Void) {
self.request(urlString: "comics", parameter: parameter.dict, success: { data in
do {
let data = try JSONDecoder().decode(ComicListResponse.self, from: data)
success(data)
} catch {
failure(error)
}
}, failure: failure)
}
}
extension APIManager {
// ΠϕϯτͷҰཡΛऔಘ͢ΔAPI
static func eventList(parameter: EventListRequest,
success: @escaping (EventListResponse) -> Void,
failure: @escaping (Error) -> Void) {
extension APIManager {
// ΩϟϥΫλʔͷҰཡΛऔಘ͢ΔAPI
static func characterList(parameter: CharacterListRequest,
success: @escaping (CharacterListResponse) -> Void,
failure: @escaping (Error) -> Void) {
self.request(urlString: “characters", parameter: parameter.dict, success: { data in
do {
let data = try JSONDecoder().decode(CharacterListResponse.self, from: data)
success(data)
} catch {
failure(error)
}
}, failure: failure)
}
}