машинопись — файл загрузки nativescript-background-http в переполнение стека

Я хочу загрузить аудиофайл на свой сервер с помощью плагина nativescript-background-http. Мобильная сторона работает нормально. нет ошибки во время выполнения. Журнал показывает полную загрузку, но когда я захожу в каталог на моем сервере, файл не загружается.

Вот мой код на nativescript

var session = bghttp.session("image-upload");
var audioFolder = fs.knownFolders.documents().getFolder("audio");
var recordedFile = audioFolder.getFile("recording.mp3");
var request = {
url: "http://talktext.me/talktext.me(app)/recAudio.php",
method: "POST",
headers: {
"Content-Type": "application/octet-stream",
"File-Name": "recording.mp3"},
description: "{ 'uploading': '" + "recording.mp3" + "' }"};
alert(recordedFile.path);
let params = [
{ name: "test", value: recordedFile.path },
{ name: "fileToUpload", filename: recordedFile.path, mimeType: 'audio/mpeg' }
];
var task = session.multipartUpload(params, request);

task.on("progress", logEvent);
task.on("error", logEvent);
task.on("complete", logEvent);
function logEvent(e) {
console.log("UPLOAD STATUS: "+e.eventName);

}

Вот мой код на recAudio.php

$all_headers = apache_request_headers();
$newimg = file_put_contents('uploads/' . $all_headers['File-Name'],
file_get_contents('php://input'));

Все на мобильном работает нормально. Но ни один файл не загружен на сервер.

-1

Решение

Я не эксперт по PHP, но я работал над этим давно. Похоже php://input недоступно для многочастной загрузки.

Источник: http://php.net/manual/en/wrappers.php.php

0

Другие решения

убедитесь, что заголовок доступен для приложения в .Htaccess файл сервера

RewriteCond %{HTTP:File-Name} .
RewriteRule .* - [E=HTTP_FILENAME:%{HTTP:File-Name}]

использовать как

file_put_contents('uploads/' . $_SERVER['HTTP_FILENAME'],file_get_contents('php://input'));
0

По вопросам рекламы [email protected]