gpt4 book ai didi

ios - Alamofire 序列化太慢

转载 作者:行者123 更新时间:2023-11-28 15:02:24 24 4
gpt4 key购买 nike

出于某种原因,我的序列化时间真的很长。我正在使用 Alamofire 和 ObjectMapper 来处理请求响应并将数据反序列化为对象。

这是我发送的请求:

Alamofire.request(Constants.apiRequests.paloozas, method: .get, parameters: params, headers: HeaderManager.sharedInstance.authHeader!).validate().responseObject { (response: DataResponse<PaginatedPaloozas>)
// handle response
}

这是 PaginatedPaloozas 对象:

struct PaginatedPaloozas: Mappable {

var meta: PageMetaData?
var paloozas: [Palooza]?

init?(map: Map) { }

mutating func mapping(map: Map) {
self.meta <- map[Constants.PaginatedPaloozas.meta]
self.paloozas <- map[Constants.PaginatedPaloozas.paloozas]
}

}

这是我的 Palooza 对象:

struct Palooza: Mappable {

var id: Int!
var startingLocation: Place!
var endingLocation: Place!
var startTime: Date!
var endTime: Date?
var note: String?
var perPersonPrice: String!
var seats: Int!
var chat: String?
var completedAt: Date?
var numSeatsAvailable: Int!
var distance: Float?
var bookingFee: String!
var totalPrice: String!
var status: PaloozaStatus!
var code: String?
var involvement: Involvement!
var bookings: [Booking]?
var owner: Owner?

enum PaloozaStatus: String {
case pending = "pending"
case inProgress = "in_progress"
case cancelled = "cancelled"
case completed = "completed"
}

enum Involvement: String {
case owner = "owner"
case presenter = "presenter"
case none = "none"
}

init?(map: Map) { }

mutating func mapping(map: Map) {
self.id <- map[Constants.Palooza.id]
self.startingLocation <- map[Constants.Palooza.startingLocation]
self.endingLocation <- map[Constants.Palooza.endingLocation]
self.startTime <- (map[Constants.Palooza.startTime], CustomDateTransform())
self.endTime <- (map[Constants.Palooza.returnTime], CustomDateTransform())
self.note <- map[Constants.Palooza.note]
self.perPersonPrice <- map[Constants.Palooza.perPersonPrice]
self.seats <- map[Constants.Palooza.seats]
self.chat <- map[Constants.Palooza.chat]
self.completedAt <- (map[Constants.Palooza.completedAt], CustomDateTransform())
self.numSeatsAvailable <- map[Constants.Palooza.numSeatsAvailable]
self.distance <- map[Constants.Palooza.distance]
self.bookingFee <- map[Constants.Palooza.bookingFee]
self.totalPrice <- map[Constants.Palooza.totalPrice]
self.status <- (map[Constants.Palooza.status], EnumTransform<PaloozaStatus>())
self.code <- map[Constants.Palooza.code]
self.involvement <- (map[Constants.Palooza.involvement], EnumTransform<Involvement>())
self.bookings <- map[Constants.Palooza.bookings]
self.owner <- map[Constants.Palooza.owner]
}

}

我只有 5 个 paloozas,序列化需要 10 秒。我尝试在 Alamofire 请求中使用不同的队列,但没有任何区别。请帮我加快这个过程。

最佳答案

事实证明我正在减慢序列化过程,因为我试图在此过程中从 URL 获取 UIImage。我希望这能帮助像我一样犯了愚蠢错误的其他人哈哈。

关于ios - Alamofire 序列化太慢,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48775930/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com