Я работаю над API и должен сделать POST-запрос на PHP server
для загрузки файлов.
В настоящее время php server
ищет, пусто $_FILES
или нет
Вот так выглядит мой запрос в моем API:
var bodyFormData = new FormData();
for (var file in parameters.files) {
bodyFormData.append('file', fs.createReadStream('uploads/'+parameters.files[file].name));
}
//console.dir(bodyFormData);
var methodToken = response.data.methodToken;
var configUploadFiles = {
url: '/upload/',
method: 'post',
baseURL: 'http://192.168.170.52',
headers: {'Content-Type': 'multipart/form-data', 'userToken': userToken, 'methodToken': methodToken},
data: bodyFormData
}
axios.request(configUploadFiles)
.then(response => {
// Do somethink
})
.catch(error => {
// Do otherthink
});
Запрос выполняется нормально, и вот console.log
из моих FormData
:
FormData {
_overheadLength: 317,
_valueLength: 0,
_valuesToMeasure:
[ ReadStream {
_readableState: [Object],
readable: true,
domain: null,
_events: [Object],
_eventsCount: 3,
_maxListeners: undefined,
path: 'uploads/1_RFM_Achats.txt',
fd: null,
flags: 'r',
mode: 438,
start: 0,
end: Infinity,
autoClose: true,
pos: 0,
bytesRead: 0,
emit: [Function] },
ReadStream {
_readableState: [Object],
readable: true,
domain: null,
_events: [Object],
_eventsCount: 3,
_maxListeners: undefined,
path: 'uploads/1_RFM_Clients.txt',
fd: null,
flags: 'r',
mode: 438,
start: 0,
end: Infinity,
autoClose: true,
pos: 0,
bytesRead: 0,
emit: [Function] } ],
writable: false,
readable: true,
dataSize: 0,
maxDataSize: 2097152,
pauseStreams: true,
_released: false,
_streams:
[ '----------------------------246027426731056834535848\r\nContent-Disposition: form-data; name="file"; filename="1_RFM_Achats.txt"\r\nContent-Type: text/plain\r\n\r\n',
DelayedStream {
source: [Object],
dataSize: 0,
maxDataSize: Infinity,
pauseStream: true,
_maxDataSizeExceeded: false,
_released: false,
_bufferedEvents: [Array],
_events: [Object],
_eventsCount: 1 },
[Function: bound ],
'----------------------------246027426731056834535848\r\nContent-Disposition: form-data; name="file"; filename="1_RFM_Clients.txt"\r\nContent-Type: text/plain\r\n\r\n',
DelayedStream {
source: [Object],
dataSize: 0,
maxDataSize: Infinity,
pauseStream: true,
_maxDataSizeExceeded: false,
_released: false,
_bufferedEvents: [Array],
_events: [Object],
_eventsCount: 1 },
[Function: bound ] ],
_currentStream: null,
_boundary: '--------------------------246027426731056834535848' }
Проблема в том, что при обработке POST
на сервере в PHP
переменная $_FILES
равна пусто
Когда я error_log $_FILES : Array\n(\n)\n
и я должен обязательно пройти через эту переменную, потому что было бы слишком много изменений, чтобы сделать