簡體   English   中英

Nodejs Formdata文件上傳

[英]Nodejs Formdata file upload

我正在從畫布上獲取圖像對象,並將其轉換為blob,然后轉換為Java腳本中的文件

        var sendingData = new FormData();
        var ctx = mainCanvas.getContext("2d");
        console.log("canveas content =" + noofchildren.get(i));
        ctx.drawImage(noofchildren.get(i), 0, 0, mainCanvas.width, mainCanvas.height);

        var b64Data = mainCanvas.toDataURL("image/jpeg", 0.7).split(",")[1];
        var byteCharacters = atob(b64Data);
        var byteNumbers = new Array(byteCharacters.length);
        for (var j = 0; j < byteCharacters.length; j++) {
            byteNumbers[j] = byteCharacters.charCodeAt(j);
        }
        var byteArray = new Uint8Array(byteNumbers);
        var blob = new Blob([byteArray], { type: contentType });
        var file = new File([blob], "sample.JPG", { type: "image/jpeg" });

        sendingData.append(nameOfTheImageFiles[i], file);

        var ajaxRequest = $.ajax({
        type: "POST",
        url: "/api/" + email + "/imagesupload",
        contentType: 'multipart/form-data',
        processData: false,
        data: sendingData
    }).success(function (data) {
        console.log(data);
        $("#image-container").children().remove();
    });

我正在使用ajax將文件發布到nodejs服務器

和req.files是nodejs中的空對象

怎么解決?

在asp.net中,我正在使用post方法獲取文件

查看FormData.append()的文檔,您可以看到只有在指定了第三個filename參數后,才能將File作為值。 因此,嘗試將相關行交換為以下內容

sendingData.append(nameOfTheImageFiles[i], file, "sample.JPG");

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM