Simple node.jsクライアントリクエストは、Herokuでクラッシュします
質問
Herokuでnode.jsを実行していますが、クライアントのリクエストを行うためにExpressに簡単なテストURLが設定されていますが、毎回アプリケーションがクラッシュしますが、その理由はわかりません。
私はサーバーに簡単に電話をかけるようにしようとしています https://graph.facebook.com/btaylor
私の関連server.jsコンテンツ:
app.get('/test', function(request, response) {
var http = require('http');
var test_client = http.createClient(443, "graph.facebook.com", true);
var facebook_request = test_client.request("GET", "/btaylor", {
"host":"graph.facebook.com"
});
facebook_request.on('response',function(facebook_response){
facebook_response.on('data',function(chunk){
console.log(chunk);
});
facebook_response.on('end', function() {
console.log("DONE");
});
});
facebook_request.end();
});
これは非常に簡単に見えますが、サーバー/テストにアクセスするたびにサーバーがクラッシュします。
私は正しいコードを押していることを知っています。たとえば、「var http = ...」という行を削除すると、http.createclientを実行しようとするときに「httpが定義されていない」を取得します。
解決
使用 https
node.jsのモジュールは、HTTPS Webサイトに接続します。あなたがそれをする方法は、単純な要求データのために過度に複雑です。
var express = require("express");
var app = express.createServer();
app.get('/test', function(request, response) {
var https = require('https');
response.writeHead(200);
https.get({ host: 'graph.facebook.com', path: '/btaylor' }, function (res) {
console.log(res);
response.end(res.body);
});
});
app.listen(process.env.PORT);
また、使用を検討することもできます リクエスト.
所属していません StackOverflow