Převést MVC ByteArray do dowloadable javascript souboru

hlasů
0

Podařilo se mi získat od společnosti Microsoft MVC ByteArray souboru, jeho název a mimetype. Mám že údaje z hovoru Ajax uzavřel s jQuery a dostat se do konzole následující údaje:

data: {
  stream: [68, 82, 0, 0, 4, 57, 0, 0, 7, 179, 8, 6, 0, 0,…],
  filename: testFile.png,
  mime: image/png
}

Získám, že údaje metodou řadiče MVC která vrací byte [] pro proud a dva řetězce pro název souboru a MIME.

Musím si tento proud js boční souboru pro uživatele ke stažení. Viděl jsem mnoho přístupů zahrnující objekt Blob, ale stále nemohu dostat správný soubor. Mám větší soubor, například pro obraz PNG, ale stažené verze nelze otevřít, protože není platný. Tady je můj pokus k dosažení cíle:

[...]
$.ajax({
  url: myUrlToControllerMethod, 
  type: 'POST', 
  data: { fileid: myFileId},
  success: function (data) {
    var a = document.createElement('a');
    var blob = new Blob(data.stream, { type: data.mime });
    console.warn(blob)
    const url = URL.createObjectURL(blob);
    console.info(url)
    a.href = url;
    a.download = data.filename;
    document.body.append(a);
    a.click();
    window.URL.revokeObjectURL(url);
  },
[...]

Tam, kde se mýlím?

Položena 13/02/2020 v 23:54
zdroj uživatelem
V jiných jazycích...                            

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more