fix(api): 콘텐츠 설정 PATCH 제외 API 파라미터를 제거한다
This commit is contained in:
@@ -9,11 +9,11 @@ import Foundation
|
||||
import Moya
|
||||
|
||||
enum HomeApi {
|
||||
case getHomeData(isAdultContentVisible: Bool, contentType: ContentType)
|
||||
case getLatestContentByTheme(theme: String, isAdultContentVisible: Bool, contentType: ContentType)
|
||||
case getDayOfWeekSeriesList(dayOfWeek: SeriesPublishedDaysOfWeek, isAdultContentVisible: Bool, contentType: ContentType)
|
||||
case getRecommendContents(isAdultContentVisible: Bool, contentType: ContentType)
|
||||
case getContentRankingBySort(sort: ContentRankingSortType, isAdultContentVisible: Bool, contentType: ContentType)
|
||||
case getHomeData
|
||||
case getLatestContentByTheme(theme: String)
|
||||
case getDayOfWeekSeriesList(dayOfWeek: SeriesPublishedDaysOfWeek)
|
||||
case getRecommendContents
|
||||
case getContentRankingBySort(sort: ContentRankingSortType)
|
||||
}
|
||||
|
||||
extension HomeApi: TargetType {
|
||||
@@ -46,46 +46,33 @@ extension HomeApi: TargetType {
|
||||
|
||||
var task: Moya.Task {
|
||||
switch self {
|
||||
case .getHomeData(let isAdultContentVisible, let contentType):
|
||||
case .getHomeData:
|
||||
let parameters = [
|
||||
"timezone": TimeZone.current.identifier,
|
||||
"isAdultContentVisible": isAdultContentVisible,
|
||||
"contentType": contentType
|
||||
"timezone": TimeZone.current.identifier
|
||||
] as [String: Any]
|
||||
|
||||
return .requestParameters(parameters: parameters, encoding: URLEncoding.queryString)
|
||||
|
||||
case .getLatestContentByTheme(let theme, let isAdultContentVisible, let contentType):
|
||||
case .getLatestContentByTheme(let theme):
|
||||
let parameters = [
|
||||
"theme": theme,
|
||||
"isAdultContentVisible": isAdultContentVisible,
|
||||
"contentType": contentType
|
||||
"theme": theme
|
||||
] as [String: Any]
|
||||
|
||||
return .requestParameters(parameters: parameters, encoding: URLEncoding.queryString)
|
||||
|
||||
case .getDayOfWeekSeriesList(let dayOfWeek, let isAdultContentVisible, let contentType):
|
||||
case .getDayOfWeekSeriesList(let dayOfWeek):
|
||||
let parameters = [
|
||||
"dayOfWeek": dayOfWeek,
|
||||
"isAdultContentVisible": isAdultContentVisible,
|
||||
"contentType": contentType
|
||||
"dayOfWeek": dayOfWeek
|
||||
] as [String: Any]
|
||||
|
||||
return .requestParameters(parameters: parameters, encoding: URLEncoding.queryString)
|
||||
|
||||
case .getRecommendContents(let isAdultContentVisible, let contentType):
|
||||
let parameters = [
|
||||
"isAdultContentVisible": isAdultContentVisible,
|
||||
"contentType": contentType
|
||||
] as [String: Any]
|
||||
case .getRecommendContents:
|
||||
return .requestPlain
|
||||
|
||||
return .requestParameters(parameters: parameters, encoding: URLEncoding.queryString)
|
||||
|
||||
case .getContentRankingBySort(let sort, let isAdultContentVisible, let contentType):
|
||||
case .getContentRankingBySort(let sort):
|
||||
let parameters = [
|
||||
"sort": sort,
|
||||
"isAdultContentVisible": isAdultContentVisible,
|
||||
"contentType": contentType
|
||||
"sort": sort
|
||||
] as [String: Any]
|
||||
|
||||
return .requestParameters(parameters: parameters, encoding: URLEncoding.queryString)
|
||||
|
||||
@@ -14,50 +14,22 @@ class HomeTabRepository {
|
||||
private let api = MoyaProvider<HomeApi>()
|
||||
|
||||
func fetchData() -> AnyPublisher<Response, MoyaError> {
|
||||
return api.requestPublisher(
|
||||
.getHomeData(
|
||||
isAdultContentVisible: UserDefaults.isAdultContentVisible(),
|
||||
contentType: ContentType(rawValue: UserDefaults.string(forKey: .contentPreference)) ?? ContentType.ALL
|
||||
)
|
||||
)
|
||||
return api.requestPublisher(.getHomeData)
|
||||
}
|
||||
|
||||
func getLatestContentByTheme(theme: String) -> AnyPublisher<Response, MoyaError> {
|
||||
return api.requestPublisher(
|
||||
.getLatestContentByTheme(
|
||||
theme: theme,
|
||||
isAdultContentVisible: UserDefaults.isAdultContentVisible(),
|
||||
contentType: ContentType(rawValue: UserDefaults.string(forKey: .contentPreference)) ?? ContentType.ALL
|
||||
)
|
||||
)
|
||||
return api.requestPublisher(.getLatestContentByTheme(theme: theme))
|
||||
}
|
||||
|
||||
func getDayOfWeekSeriesList(dayOfWeek: SeriesPublishedDaysOfWeek) -> AnyPublisher<Response, MoyaError> {
|
||||
return api.requestPublisher(
|
||||
.getDayOfWeekSeriesList(
|
||||
dayOfWeek: dayOfWeek,
|
||||
isAdultContentVisible: UserDefaults.isAdultContentVisible(),
|
||||
contentType: ContentType(rawValue: UserDefaults.string(forKey: .contentPreference)) ?? ContentType.ALL
|
||||
)
|
||||
)
|
||||
return api.requestPublisher(.getDayOfWeekSeriesList(dayOfWeek: dayOfWeek))
|
||||
}
|
||||
|
||||
func getRecommendContents() -> AnyPublisher<Response, MoyaError> {
|
||||
return api.requestPublisher(
|
||||
.getRecommendContents(
|
||||
isAdultContentVisible: UserDefaults.isAdultContentVisible(),
|
||||
contentType: ContentType(rawValue: UserDefaults.string(forKey: .contentPreference)) ?? ContentType.ALL
|
||||
)
|
||||
)
|
||||
return api.requestPublisher(.getRecommendContents)
|
||||
}
|
||||
|
||||
func getContentRankingBySort(sort: ContentRankingSortType) -> AnyPublisher<Response, MoyaError> {
|
||||
return api.requestPublisher(
|
||||
.getContentRankingBySort(
|
||||
sort: sort,
|
||||
isAdultContentVisible: UserDefaults.isAdultContentVisible(),
|
||||
contentType: ContentType(rawValue: UserDefaults.string(forKey: .contentPreference)) ?? ContentType.ALL
|
||||
)
|
||||
)
|
||||
return api.requestPublisher(.getContentRankingBySort(sort: sort))
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user