问题描述
我无法从 iOS Swift 5 向 Vapor 3 发送日期。这是我从 Vapor 得到的错误:
const fixService = services['default'][15];
const zone = branches['default'][0];
这是我在 iOS 中创建日期的方法
POST /admin/test Expected date string to be ISO8601-formatted.
这是我在 iOS 中的交易模型
let today = Date()
let f = ISO8601DateFormatter()
f.formatOptions.insert(.withFractionalSeconds)
let finalDate = f.string(from: today)
这是我的蒸汽 API
final class Transaction: Codable,ReflectedStringConvertible {
var id: Int?
var date: String
var amount: Int
var planeID: Int
var userID: UUID
var month: Int
var year: Int
init(date: String,amount: Int,planeID: Int,userID: UUID,month: Int,year: Int) {
self.date = date
self.amount = amount
self.planeID = planeID
self.userID = userID
self.month = month
self.year = year
}
}
这是我在蒸气侧的交易模型
func createHandler (_ req: Request,transaction: Transaction) throws -> Future<Transaction> {
return transaction.save(on: req)
}
知道我做错了什么吗?是不是我发送的是日期字符串而不是日期?非常感谢。
解决方法
答案是删除小数秒
let today = Date()
let f = ISO8601DateFormatter()
let finalDate = f.string(from: today)