Intereting Posts
Как я могу узнать, есть ли у меня UIView, где я долго нажимаю, когда я перемещаю точку касания? API iOS для изменения пользовательских настроек Django: переносить данные на iPhone и устройства Android без APNS или GCM Поиск структуры элементов Touch Cocoa OCMock – доступ к слабым свойствам частично издевающегося объекта вызывает спорадический сбой Возможно, что Intel Edison действует как пульт дистанционного управления для iOS Библиотечные файлы, отсутствующие в проекте PJSIP, и как связать файлы библиотеки? Проблемы с рендерингом Myriad Pro iOS Панель навигации становится черной при нажатии кнопки VC Основные данные: предикат для первого элемента в отношениях orderd ios: текст не обертывается правильно на iPhone 5S и ранее (4-дюймовые и более мелкие устройства) Приложение iOS отклонено для внешнего режима VoIP Сообщения о конечных точках приложения и основных данных iOS SceneKit LookAt ограничение не анимирует плавно Обработка цветовых изменений оттенков элементов UIBarButtonItems в контроллере навигации

Ошибка AFNetworking – «Недопустимый тип записи JSON (NSConcreteData)» – при загрузке аудиофайла

Я AFNetworking использовать AFNetworking для загрузки аудиофайла в Cloudinary через POST-вызов. Я использую AFNetworking для отправки запросов POST на мой собственный сервер с легкостью, но это первый раз, когда я попытался отправить объект NSData через AFNetworking, где я думаю, что проблема кроется и я не совсем уверен, как мне нужно настроить вызов чтобы заставить его работать.

Мой код

Мне нужно отправить 4 параметра через почтовый звонок в службу Cloudinary которую я помещаю в словарь.

 NSData *audioFile = [[NSData alloc]initWithContentsOfURL:_audioRecorder.url]; NSMutableDictionary *myParam = [NSMutableDictionary dictionary]; [myParam setValue:@(nowTime) forKey:@"timestamp"]; [myParam setValue:audioFile forKey:@"file"]; [myParam setValue:api_key forKey:@"api_key"]; [myParam setValue:finalSignature forKey:@"signature"]; [cloudManager setUpDataCall:@"/upload" withParameters:myParam]; 

setUpDataCall переходит к подклассу AFHTTPSessionManager с этим кодом. Это остальная часть URL-адреса сообщения, если вам любопытно @"https://api.cloudinary.com/v1_1/karmo/raw"

  - (void)setUpDataCall:(NSString *)callURL withParameters:(NSDictionary *)parameters { [self POST:callURL parameters:parameters success:^(NSURLSessionDataTask *task, id responseObject) { if ([self.delegate respondsToSelector:@selector(cloudManager:didReturnData:)]){ //Success :) } }failure:^(NSURLSessionDataTask *task, NSError *error) { if ([self.delegate respondsToSelector:@selector(cloudManager:didFailWithError: )]) { //Error :( } }]; } 

Ошибка

Я получаю эту ошибку, когда пытаюсь отправить файл Invalid type in JSON write (NSConcreteData) .

Когда я добавляю контрольную точку исключения, она идентифицирует это

  [mutableRequest setHTTPBody:[NSJSONSerialization dataWithJSONObject:parameters options:self.writingOptions error:error]]; 

Это в этом методе в классе AFURLRequestSerialization.m .

 - (NSURLRequest *)requestBySerializingRequest:(NSURLRequest *)request withParameters:(id)parameters error:(NSError *__autoreleasing *)error 

Я видел несколько других вопросов, связанных с stackoverflow, таких как ниже, но я не уверен, что они все еще актуальны, поскольку код из этих сообщений, похоже, AFNetworking ошибки в коде, поскольку я предполагаю, что AFNetworking обновляется с тех постов.

AFNetworking Загрузка файла

Будем очень благодарны за любую помощь или примеры кода. Спасибо, что потратили время.

Solutions Collecting From Web of "Ошибка AFNetworking – «Недопустимый тип записи JSON (NSConcreteData)» – при загрузке аудиофайла"