Загрузка нескольких изображений с использованием AFNetworking Данные из нескольких частей не работают - PullRequest
0 голосов
/ 11 июня 2018

Я пытаюсь загрузить несколько изображений как составные части для данных с помощью AFNetworking 2.6.3 в моем проекте Swift

Вот мой код добавления данных для формирования данных

self.webserviceHandler.post(serviceName, parameters: nil, constructingBodyWith: { (data:AFMultipartFormData) in
                for i in 0..<imageArray.count{
                    let imagData = UIImageJPEGRepresentation(imageArray[i], 0.5)
                    data.appendPart(withFileData: imagData!, name: "MenaImage[]", fileName: fileNameArray[i], mimeType: "image/jpeg")

                }

                for (key, value) in parameters{
                    data.appendPart(withForm: "\(value)".data(using: .utf8)!, name: key as! String)
                }
            }, success: { (operation:AFHTTPRequestOperation!, responseObject:Any!) in
                successResponseClosure(responseObject as AnyObject)
            }) { (operation:AFHTTPRequestOperation!, error:Error!) in
                    errorClosure(error as NSError)
                }

webserviceHandler isОбщий класс AFHTTPRequestOperationManager.

инициализация AFHTTPRequestOperationManager

init() {
        let baseURL = URL(string:"http://test.com/")!
        self.webserviceHandler = AFHTTPRequestOperationManager(baseURL:baseURL)
        self.webserviceHandler.requestSerializer = AFJSONRequestSerializer()
        self.webserviceHandler.responseSerializer = AFJSONResponseSerializer()

        let contentType = NSString(string:"text/html")
        let contentTypes = NSMutableSet(set:self.webserviceHandler.responseSerializer.acceptableContentTypes!)
        if contentTypes.contains(contentType) == false{
            contentTypes.add(contentType)
            self.webserviceHandler.responseSerializer.acceptableContentTypes = contentTypes as Set<NSObject>

        }

Вот запрос, зарегистрированный AFNetworkActivityLogger

{
    "Accept-Language" = "en-BH;q=1, ar-BH;q=0.9, en-GB;q=0.8";
    "Content-Length" = 3023913;
    "Content-Type" = "multipart/form-data; boundary=Boundary+F955A845D801084F";
    "User-Agent" = "MBB/1.0 (iPhone; iOS 11.2.5; Scale/2.00)";
} (null)

Пожалуйста, помогите исправить это.

1 Ответ

0 голосов
/ 20 июня 2018

Наконец-то решена проблема.Это была проблема на стороне сервера.Был фрагмент кода для регистрации запросов, поступающих от приложений.Когда в запросе присутствует изображение большого размера, этот код выдает ошибку.Когда этот код удален, он работает отлично.Надеюсь, что это помогает и другим.

...