いくつかの関数を定義した名前空間オブジェクトがあります。関数の1つは、リモートサーバーへのWebSocketセッションを作成するために使用されます。
ns.Session = function(url, config, callback){
var ws = new WebSocket(url);
ws.onmessage = function (e){
if(login(e.data)){
// This is the point at which I need to pass back the session object to callback
callback(session):
}
}
....
}
Javascriptでは、誰かがこの関数を使用して呼び出すかどうかを知る限りns.Session(....)
、this
オブジェクトはnsになります。では、「セッション」のインスタンスを取得してコールバックに送信するにはどうすればよいですか。
arguments.callee
私の知る限り、非推奨です。
私がこのようにしている理由は、サーバーがログインを確認するまでセッションが「使用可能」と見なされないため、実際に接続してログインする前に関数オブジェクトを時期尚早に返したくないからです。コールバックの。これを達成するためのより良い方法があれば、私もそれを受け入れます。
セッションには、簡潔にするためにここでは示していないaddHandler
、などの他の内部関数がたくさんあります。sendData