Я должен отправить запрос на сервер.Сохранение записи пользователя.Пользовательская запись содержит модель субъекта, и этот субъект также содержит несколько моделей и массивов.позвольте мне привести небольшой пример.
@ignore
public class SubjectModel: Codable {
public var Name : String? = ""
public var Price : Int? = 0
public var ISBN : String? = ""
public var listTeachers : [TeacherModel]? = []
}
public class TeacherModel: Codable {
public var Name : String? = ""
public var PhoneNo : String? = ""
public var listClasses: [ClassModel]? = []
}
public class ClassModel: Codable {
public var Name : String? = ""
public var Section : String? = ""
public var RoomNo : String? = ""
}
Так что мне нужно отправить SubjectModel, и, как вы можете видеть, SubjectModel содержит несколько массивов InnerModel.Все модели являются кодируемыми.
Таким образом, JSON, необходимый для моего веб-сервиса, должен выглядеть следующим образом:
{ApiKey: "asas-dsadas-xyz-xyz", "StudentSubjects": {Теперь вот массивы "InnerList ": [здесь идут внутренние массивы]}}
Проблемы:
- Как вы можете видеть, я реализовал Codables для моей модели, поэтомуЯ поправляюсь и ожидаю Джсона, но я не могу прикрепить ключ Api
- Также у меня нет идеи, как отправить такую вещь как Параметры Alamofire.
- Или Вы можете сказать это просто как " Как отправить StudentSubject и Apikey также в формате json "
Пожалуйста, помогите мне, я бьюсь головойно не могу получить ответ на стороне сервера, потому что я получаю нулевое значение.
ОБНОВЛЕНИЕ 1: Вот как я это делаю
let jsonEncoder = JSONEncoder()
let jsonData = try jsonEncoder.encode(mySubjectModel)
let json = String(data:jsonData,encoding:String.Encoding.utf8)
let parameter: [String:AnyObject] = [
"StudentSubjects" : json as AnyObject,
"ApiKey":"xyz-zyz-zyz"
]
И затем отправляю это так
Alamofire.request(Common.URL+ServiceMethodName, method: .post, parameters:parameter, encoding: JSONEncoding.default, headers: nil) .responseJSON { response in