FormData在Angular 2中附加值时显示为空

时间:2018-06-18 12:19:50

标签: angular typescript form-data recordrtc

我正在使用RecordRTC录制语音并尝试将录制的语音发送到服务器。下面是存储blob和文件名的代码。

public uploadToServer(recordRTC, callback) {
    let blob = this.recordRTC instanceof Blob ? this.recordRTC : this.recordRTC.blob;
    let fileType = blob.type.split('/')[0] || 'audio';
    let fileName = (Math.random() * 1000).toString().replace('.', '');
    if (fileType === 'audio') {
      fileName += '.' + (!!navigator.mozGetUserMedia ? 'ogg' : 'wav');
    } else {
      fileName += '.webm';
    }
    // create FormData
    var formData: FormData = new FormData();
    console.log(fileName);
    console.log(blob);
    formData.append(fileType + '-filename', fileName);
    formData.append(fileType + '-blob', blob);
    console.log(formData);
}

我分别控制了文件名和blob文件。它正在显示。但是当我在formData中附加blob和文件名时,它显示为空白。

请帮帮我。

2 个答案:

答案 0 :(得分:0)

您可以使用它来附加blob数据。

form.append("blob",blob, filename);

控制台日志。用这个。

for (var pair of formData.entries()) {
  console.log(pair[0]+ ', ' + pair[1]); 
}

如果数据已附加,控制台日志应该有效。

答案 1 :(得分:0)

console.log(formData)中始终显示为空。您可以使用formData.get('PassKeyHere')来获取数据。