Огромный запрос на загрузку файлов Alamofire с multipart / form-data занимает очень много времени, чтобы ответить - PullRequest
1 голос
/ 21 января 2020

Я использую Alamofire с multipart / form-data и InputStream для моего запроса на загрузку. Он работает очень хорошо для файлов размером менее 100 МБ, но после 100 МБ на запрос уходит очень много времени. Я делаю что-то не так с моим кодом? Вот мой запрос:

    let parameters: [String: String] = // my necessary parameters here
    let stream = InputStream(url: fileURL)

    AlamofireConstants.sessionManager.upload(multipartFormData: { (multipartFormData) in

          for (key, value) in parameters {
             multipartFormData.append(value.data(using: .utf8)!, withName: key)
          }

          multipartFormData.append(stream!,
                                withLength: UInt64(fileSize),
                                name: "file",
                                fileName: fileName,
                                mimeType: GetMimeType(ext: fileExtension))

    },  usingThreshold: SessionManager.multipartFormDataEncodingMemoryThreshold,
        to: linkToUpload,
        method: .post,
        headers: ["Content-Type":"multipart/form-data"],
        encodingCompletion: { result in
                ... // handling success & failure here
   })
...