doufan8805 2018-12-10 11:09 采纳率: 0%
浏览 130

Axios POST请求和PHP $ _FILES

I am working on an API and I have to make a POST request on a PHP server to upload files.

Currently, the php server looks if the $_FILES is empty or not

This is what my query looks like in my 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
});

The query runs fine and here is a console.log of my 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
Content-Disposition: form-data; name="file"; filename="1_RFM_Achats.txt"
Content-Type: text/plain

',
            DelayedStream {
                source: [Object],
                dataSize: 0,
                maxDataSize: Infinity,
                pauseStream: true,
                _maxDataSizeExceeded: false,
                _released: false,
                _bufferedEvents: [Array],
                _events: [Object],
                _eventsCount: 1 },
            [Function: bound ],
             '----------------------------246027426731056834535848
Content-Disposition: form-data; name="file"; filename="1_RFM_Clients.txt"
Content-Type: text/plain

',
             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' }

The problem is that in the processing of POST, on the server in PHP, the variable $_FILES is empty

When i error_log $_FILES : Array ( )

and I must absolutely go through this variable because there would be too much change to make

  • 写回答

0条回答 默认 最新

    报告相同问题?

    悬赏问题

    • ¥15 #MATLAB仿真#车辆换道路径规划
    • ¥15 java 操作 elasticsearch 8.1 实现 索引的重建
    • ¥15 数据可视化Python
    • ¥15 要给毕业设计添加扫码登录的功能!!有偿
    • ¥15 kafka 分区副本增加会导致消息丢失或者不可用吗?
    • ¥15 微信公众号自制会员卡没有收款渠道啊
    • ¥15 stable diffusion
    • ¥100 Jenkins自动化部署—悬赏100元
    • ¥15 关于#python#的问题:求帮写python代码
    • ¥20 MATLAB画图图形出现上下震荡的线条