2017-05-11 1 views
4

私はバッファにあるファイルをメモリに持っていますが、ファイルシステムには存在しません(ストリームできるだけではありません)。FormServerにバッファをSignServerに送信する方法は?

HTTPを使用してSignServerに送信しようとしています。ここで

は、私はそれをやろう方法は次のとおりです。

var formdata = require('form-data'); var form = new formdata(); 

form.append('workerName', 'PDFSigner'); 
form.append('data', file_buffer); 
// or 
// escape(file_buffer.toString('binary')) 
// or 
// file_buffer.toString('binary') (without escaping) 

var request = form.submit('http://localhost:8080/signserver/process', function(err, res) {}); 

私はfile_buffer SignServerがdataが空であることを述べている追加しようとすると:

ステータス400 - アップロード

で欠落しているファイルの内容を

escape(file_buffer.toString('binary'))How do I send a buffer in an HTTP request?で提案されているように)を追加しようとすると、同じ話です。

私が言ってfile_buffer.toString('binary')のNode.jsのクラッシュ追加してみてください:

ノード:../src/stream_base.cc:157 int型のノード:: StreamBase :: Writev(constのV8 :: FunctionCallbackInfo &を):アサーション `(オフセット)< =(storage_size) 'に失敗しました。 Node.jsの中

中止(コアダンプ)

どのように私が正しくHTTP(マルチパート/フォームデータ)を介してファイル(バッファ)を送信しますか?

form.append('data', file_buffer, { filename : 'document.pdf' }); 

これは、(非常に明確にはいえない)文書化されて、ここで:あなたが明示的にバッファをファイルとしてアップロードされていない、dataフィールドにfilenameを設定する必要が

答えて

関連する問題