0
JSON-RPCを使用してWebサービス用のコードを生成したいと思います。生成されたコードは、クライアントが使用するために生成されたメソッドを提供します。伝統的なJavaScriptでは、各メソッドに割り当てられたコールバックを使用すると思いますが、適切なMooToolsの方法でこれを行う方法は不明です。MooToolsを使用してJSON-RPC応答を処理する最適な方法は何ですか
var Service = new Class({
Implements: [Options, Events],
options: {
url: 'http://localhost/lol/JSON',
...
send: function(opts) {
var JSONrpc = new Request.JSON({
...
});
JSONrpc.send(JSON.encode({'method': opts.methodname || this.options.methodname,
'params': opts.params || this.options.params}));
},
...
//The methods to be generated
loginUser: function(username, password) {
this.send({'methodname': 'loginUser', 'params': [username, password]});
},
logoffUser: function(username) {
this.send({'methodname': 'logoffUser'});
},
getProfile: function(username) {
this.send({'methodname': 'getProfile', 'params': [username]});
},
応答を正しく処理するにはどのような方法が最適ですか?それぞれの方法についてイベントを開催する必要がありますか?私はその呼出しを識別するためにIDを使うべきですか? これを行うMooToolsの方法は何ですか?
私はすべての呼び出しが一意のIDを持つ配列に格納されているソリューションを考え出しました。呼び出しが返ると、配列を反復して、対応する呼び出しを検索しようとします。見つかった場合、配列からIDを削除します。このソリューションでは、生成されたメソッドごとにイベントを生成する必要がありますが、それは悪い解決策ではないと思います。それはうまく聞こえますか、それとも私はそれを別の方法で行うべきですか? – navlelo