Загрузка файла с использованием NSURLSessionUploadTask на сервер PHP

У меня есть система загрузки видео в приложении iOS с использованиемNSURLSessionUploadTask, Видео файл сохранен вNSURL поэтому я использую следующий код в моем методе загрузки:

request.HTTPMethod = @"POST";
[request addValue:@"file" forHTTPHeaderField:@"fileName"];

// Create upload task
NSURLSessionUploadTask *task = [session uploadTaskWithRequest:request fromFile:filePath completionHandler:^(NSData *data, NSURLResponse *response, NSError *error) {
    if(!error) {
        // handle success
    } else {
        // handle error
    }
}];

// Run the task
[task resume];

У меня есть сервер PHP (использующий Laravel), работающий под nginx для обработки этой загрузки. Я проверил это с почтальоном, и он принимает загрузки нормально (ожидая файл с именем «файл»).

Когда я запускаю приведенный выше код objc, сервер сообщает мне, что файл не был загружен ($_FILES массив пуст).

Я пробовал с и без установки заголовка «fileName», и я пытался установить «Content-Type» в «multipart / form-data», но ни одна из этих работ не работает.

Как я могу получитьNSURLSessionUploadTask правильно загрузить эти файлы (изNSURLа) на сервер?

Этот пост, кажется, детализирует похожую проблему:NSURLSessionUploadTask не передает файл в скрипт php

Ответы на вопрос(1)

Ваш ответ на вопрос