0

私は、npm の request パッケージを使用して、meteor.js restivus パッケージを使用して作成された REST API にファイル バッファーを投稿しています。API にポストする私の node.js クライアント コードは次のとおりです。

    url = ' http://localhost:3000/api/v1/images/ ';

fs.readFile('./Statement.odt', function read(err, data) { if (err) { throw err; } console.log(data); //At this stage the file is still a buffer - which is correct var file = data; request.post({ uri: url, headers: { 'X-User-Id': userId, 'X-Auth-Token': authToken }, form: { file: file, //Inside the request.post the file is converted to binary encoding name:"Statement.odt" } }, function(err, httpResponse, body) { if (err) { return console.error('post failed:', err); } console.log('Get successful! Server responded with:', body); }); });

ここでの問題/問題は、request.post 内でファイルがバイナリ エンコードされた blob に変換されることです。上記のコードの「request.post」の最初の引数の「form:」プロパティで私のコメントを参照してください。これは、ファイルがバイナリ エンコード ファイルではなくバッファとして必要な meteor.js サーバーで問題になります。(情報: Ostr-io/files の GridFS を使用してファイルを保存しています - ファイルがバッファである必要があります)

ファイルをエンコードされた文字列として渡す以外に方法がない場合、そのエンコードされたブロブを、meteor.jsを使用/話しているバッファサーバー側に変換する方法はありますか? 助けてください!

さらに情報が必要な場合は、お知らせください。提供します。

4

1 に答える 1