2016-12-20 10 views
2

pipeを使用してポストリクエスト本体に読み込み可能なストリームを渡したいのですが、問題があります。ファイルからストリームデータをノードjsのポストボディリクエストにパイプする方法

var request = require('request'); 
var fs = require('fs'); 
var source = fs.createReadStream('./originalJsonDataWithObject.json'); //creating a read stream to read the file 
    source.pipe(request.post('http://localhost:3030/decompress')); //piping it to the post request 
+1

あなたがhttp://stackoverflow.com/questions/8675688/send-content-type-application-json-post-with-nodeで試してみてください-js – Kansen

答えて

-1
var request = require('request'); 
    var fs = require('fs'); 
    var file = fs.createReadStream('./originalJsonDataWithObject.json');// This line opens the file as a readable stream. 
    http.get(url, function (response) { 
     response.pipe(file);// this line just create a stream and move to file into stream 
    }); 
+0

私は彼がこのURL「http:// localhost:3030/decompress」にJSONを投稿し、URL上のHttpGetをポストして、JSONをレスポンスにパイプしたいと思っています。 +あなたの答えはこの問題に対する正解ではなく、これは単なるコードであり、説明はありません – Kansen

+1

このコードスニペットは問題を解決するかもしれませんが[説明を含む](http://meta.stackexchange.com/questions/114762/explain-entire-code-based-answers)は、あなたの投稿の質を向上させるのに本当に役立ちます。将来読者の質問に答えていることを覚えておいてください。そうした人々はあなたのコード提案の理由を知らないかもしれません。 – DimaSan

+0

はい私は(私は残りのAPIから実行時に受信している)jsonデータを入れたいと思います。静的ファイルからノード-ststdの解凍機能には含まれていません。 –

0
var request = require('request'); 
var fs = require('fs'); 
var file = fs.createReadStream('./originalJsonDataWithObject.json'); 
var req = request.post({ 
    url: 'your post url', 
    headers: {<headers>}, 
    body: file 
}); 

POSTリクエストのボディパラメータは、あなたが実際にあなたの 要求で送信されたデータである。これは私が持っているコードです。このデータは、多くの形式(ストリーム、バッファ、文字列など)にすることができます。 パイプする必要はありません。あなたはJSONデータをポストする必要がある場合は、これを行うことができます。

const req = request.post({ 
     url: 'http://localhost:3030/decompress', 
     headers: { 
      'Content-Type': 'application/json' 
     }, 
     body: JSON.stringify(<your JSON data>)     
    }); 
+0

、残念です。 –

関連する問題