2016-12-10 3 views
0

を使用して...私はこれまでかなりの新たなんだ要求

を開いているセッションを維持I次のコードを持っている:この要求は、現在さまざまなパラメータと値とを持つたびに行われる

request("http://somePythonServer.com?param1=1&param2=2", function (err, response, body) { 
     if (err){ 
     console.error(err); 
     next(err); 
     } 
     console.log("Response Ended - SUCCESS"); 
}); 

私はそれを実行するたびに新しい接続が開かれています。

私の質問は、オープンな接続を維持する方法ですか?

EDIT:リクエストの送信と受信の両方を制御できます。

私の目標: 私は2つのサーバー間で速度を上げようとしています(NodeJSはHTTP GETをPythonの単純なHTTPサーバーに送信しています)。できるだけ早く

+0

とクッキーとは何の問題、あなたは「オープンな接続を維持するためにどのように」と言ったときに解決しようとしているのですか?あなたは単に 'request()'を呼び出すだけで、接続は自動的に開かれますので、余分な作業はありません。本当に解決しようとしている問題はわかりません。 – jfriend00

+0

@ jfriend00私は2つのサーバー間の速度を上げようとしています(NodeJSはHTTP GETをPythonの単純なHTTPサーバーに送信しています) 私はそれらの2つの間の接続を常に開いたままにします。 – TBE

答えて

-1

あなたの質問には、キープアライブ

、あなたはHTTP剤中に生き続けるオンにする必要があり それは、各リクエストに応じて接続を再利用しますHTTPを使用する方法についてである場合。 あなたの質問がセッションを維持する程度であれば、おそらくこのようなものはあなたに

https://github.com/node-modules/agentkeepalive

を助ける: 、あなたは数分ごとにこれを呼び出す必要があります。

クッキーは(他の、彼らは後続の要求で使用される)は、デフォルトでは無効にされています。あなたは

クッキージャーが必要

は、それが言う

(ページクッキーで検索)https://github.com/request/requestを参照してください。クッキーを有効にするには、jarをtrueに設定します(デフォルトまたはオプションのいずれか)。

var request = request.defaults({jar: true}) 
request('http://www.google.com', function() { 
    request('http://images.google.com') 
}) 

クッキーに関連するより多くのオプションがある

セッションは、単にいくつかのセッションID

+0

クッキーはクライアントの状態を1つの要求から次の要求に保つためのものですが、OPが "オープンな接続を維持する"ことについて何を求めているかは関係ありません。 – jfriend00

+0

@ jfriend00詳しく教えていただけますか? 「リクエスト」を使うたびに新しい接続を開く必要がない限り、クッキーやキープアライブで、どうやってそれをやるのか気にしません。 – TBE

+0

キープアライブとクッキーは2つの異なるものですキープアライブとは、複数のHTTPリクエストを作成しながら同じTCP接続を使用することです。 Cookieは、URLを呼び出すときに同じセッションを維持することです。 –

関連する問題