将声音文件的发布请求从curl转换为angular

时间:2019-03-24 07:25:03

标签: angular http curl ionic-framework audio

我正在从Ionic前端将声音文件发布到Flask服务器。

我有这个curl命令,它可以正常工作,我正在尝试转换为角度:

curl -F "file=@to_test_mono2.wav" http://127.0.0.1:5001/test_wav

这是Angular代码:

postUrl = 'http://127.0.0.1:5001/test_wav';

fetchAudioUrl = 'http://localhost:8100/assets/sound/to_test_mono2.wav';

async getAudio() {
    this.api = this.httpClient.get(this.fetchAudioUrl, { responseType: 'blob' });
    this.api.subscribe(data => {
      this.file = new Blob([data], { 'type': 'audio/wav; codecs=MS_PCM' });

      console.log('gotfile', this.file);
    });
    return this.file;

  }
  async send() {
    this.audioFile = await this.getAudio();
    const formData: FormData = new FormData();
    formData.append('file', this.audioFile);
    this.api = this.httpClient.post(this.postUrl, formData);
    // this.api = this.httpClient.post(this.postUrl, { 'file': this.audioFile });
    this.api.subscribe(data => {
      console.log('my data:', data);
    });
  }

我得到的错误:

  

错误:{错误:语法错误:JSON中位置0处的意外令牌e   在XMLHtt的JSON.parse()处...,文本:“错误:API无法   在您的请求中找到“文件””}

     

“错误:API在您的请求中找不到'文件'”来自Flask   后端在请求中需要文件。

0 个答案:

没有答案