Параметры плагина Cordova FileTransfer пустые на Android

У меня есть приложение Cordova для iOS, которое я сейчас обновляю для поддержки Android. У меня есть большинство проблем, но плагин FileTransfer не включает FileUploadOptions.params в запросе. Все работает нормально на iOS. С Android запрос отправляется, и все кажется нормальным, за исключением того, что запрос, который достигает сервера, не имеет полей формы.

Я установил точку останова непосредственно перед вызовом метода upload , и объект options.params выглядит правильно.

Я тестирую Android 4.4.3, Cordova 3.5 и плагин FileTransfer 0.4.4. Сервер работает с Apache и имеет SSL.

Вот мой код:

 var options = new FileUploadOptions(); options.chunkedMode = false; options.mimeType = 'audio/mp4'; options.fileKey = 'file'; options.fileName = filename; options.params = { 'siteId': siteId, 'name': nameFld.getValue(), 'date': sqlDate, 'length': Math.round(storyLength) }; options.headers={'Authorize': token}; var ft = new FileTransfer(); ft.upload(path, url, uploadSuccess, uploadFail, options); 

Я нашел ту же проблему здесь, без ответа: Phonegap fileTransfer upload не имеет параметров POST

UPDATE: для этого была открыта проблема: https://issues.apache.org/jira/browse/CB-7171

Ключом к его настройке является параметр option.headers :

 options.headers = { Connection: "close" } 

Phonegap File Передача изображения сбоя на каждом другом изображении: Код ошибки 3 с загрузкой FileTransfer

Я получил его работу; Оказывается, я ошибался в том, что файл успешно передан. Из-за некоторой путаницы в файловой системе Android я использовал неправильный путь к файлу.

Плагин не вызвал ошибку в консоли JavaScript и продолжал делать запрос без привязки данных. Как только я проверил сообщения об ошибках в мониторе отладки Dalvik, я смог отследить проблему.

Я могу подтвердить, у меня такая же проблема с последними версиями, как вы указали. По-видимому, одним из решений является использование jquery.fileupload. Я еще не пробовал. Но, опубликуйте, если он будет успешным.!