node.jsを使用してElectronアプリケーションからxhrを使用して、ファイルシステムから1GBのファイル(入力タイプファイルを使用しないハードコードされたファイル)をアップロードできません

integer_dev

xhrを使用してファイルシステム(ユーザーが指定していない)から読み取ったファイルをアップロードする必要があります。Ajax経由で送信する方法はありますか?

javascriptに入力タイプfileがあり、javascriptファイルオブジェクトhttps://developer.mozilla.org/en-US/docs/Web/API/Fileを提供することを理解していますNode fs API(https://nodejs.org/docs/latest/api/fs.htmlを使用してファイル記述子を取得しようとしましたしかし、xhr経由で送信することはできません。これが私のコードスニペットです。

どんな助けでも大歓迎です。

var req = new XMLHttpRequest();
req.open(method, url);    
req.overrideMimeType('text/xml');

 var progress = 0;
  req.upload.addEventListener('progress', function (event) {
      if (event.lengthComputable) {
          progress = Math.round(event.loaded * 100 / event.total);
      }
   }, false);

   req.onreadystatechange = function () {
      // add logic for each state
   };

   var fs = require('fs');
   if (filename) {
       // get the file descriptor and send it via xhr
       fs.open(filename, "r", function(error, fd) {
       // -- THIS IS THE PART NOT WORKING --
       req.send(fd);
     });
   } else {
         console.log('no filename');
   }
マイナスフォー

それはファイルを読む方法ではありません。これはあなたがそれをする方法です:

var fs = require('fs');
fs.readFile(filename, { encoding : 'utf8' }, function(err, data){
    //data holds the contents of the file.
    req.send(data);
});

この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。

侵害の場合は、連絡してください[email protected]

編集
0

コメントを追加

0

関連記事

Related 関連記事

ホットタグ

アーカイブ