Установить имя файла для Blob-файла - PullRequest
0 голосов
/ 15 октября 2018

Я хотел бы добавить имя файла в мой файл Blob, но я не знаю, как это сделать, вот мой код на данный момент:

  onClick() {
    var myHeader = new Headers();

    myHeader.append('Content-Type', 'text/plain');

    fetch(this.props.url, {
      method: 'POST',
      headers: myHeader,
      body: JSON.stringify(this.state.api_arg)
    }).then(response => {
      const filename = getFileName(response.headers.get('Content-Disposition'))

      response.blob().then(myBlob => {
        const fileUrl = URL.createObjectURL(myBlob)

        console.log(fileUrl)
        window.open(fileUrl)
      })
    })
 }

мое имя файла хранится впеременная.

Ответы [ 2 ]

0 голосов
/ 15 октября 2018
const url = URL.createObjectURL(myBlob);
const link = document.createElement('a');
link.href = url;
link.setAttribute('download', filename);
document.body.appendChild(link);
link.click();
0 голосов
/ 15 октября 2018

Ответ Нильса был неполным, чтобы обработать имя файла в blob, вы должны сделать это следующим образом:

const file = new File([myBlob], filename)

...