contenteditable для текстового файла в azure хранилище в javascript - PullRequest
0 голосов
/ 27 марта 2020

Я пытаюсь преобразовать содержимое редактируемого div в текстовый файл и сохранить его в azure. Это на самом деле css файл (формат), но я думаю, что текст будет иметь тот же результат. Это то, что я получил до сих пор: \

var sasKey = "xxxxxxxxxxxxxxx";
var blobUri = xxxxx.blob.core.windows.net";
var blobService = AzureStorage.Blob.createBlobServiceWithSas(blobUri, sasKey);

function Save() {

    var blobData = document.getElementById("CONTENT").innerText;
    var myBlob = new Blob(blobData, "plain/text");

    blobService.createBlockBlobFromBrowserFile('style',
        "test.txt",
        myBlob,
        (error, result) => {
            if (error) {
                // Handle blob error
            } else {    
                console.log('Upload is successful');
            }
        });
}

HTML:

<div id="CONTENT" contenteditable="true" spellcheck="false">so here we have text</div>

<input type="button" value="save" onclick="Save()"/>

я получаю следующую ошибку:

Uncaught TypeError: Failed to construct 'Blob': The provided value cannot be converted to a sequence.

Ответы [ 2 ]

1 голос
/ 27 марта 2020

Объект Blob принимает список в качестве первого параметра.

Попробуйте вместо этого:

var myBlob = new Blob([blobData], { type: "plain/text" });

https://developer.mozilla.org/en-US/docs/Web/API/Blob/Blob

0 голосов
/ 28 марта 2020

для завершения это то, что я использовал для загрузки текстового (TXT) файла

<script>azure-storage.blob.min.js</script>

JS

var sasKey = "xxxxxxxxxxxxxxx";
var blobUri = xxxxx.blob.core.windows.net";
var blobService = AzureStorage.Blob.createBlobServiceWithSas(blobUri, sasKey);

function Save() {

    var blobData = document.getElementById("CONTENT").innerText;

    blobService.createContainerIfNotExists('container', (error, container) => {
        if (error) {
            // Handle create container error
        } else {
            console.log(container.name);
        }
    });

    blobService.createBlockBlobFromText('container', "test.txt", blobData,
        (error, result) => {
            if (error) {
                // Handle blob error
            } else {    
                console.log('Upload is successful');
            }
        });
}

HTML

<div id="CONTENT" contenteditable="true" spellcheck="false">so here we have text</div>

<input type="button" value="save" onclick="Save()"/>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...