私はpythonJSON-RPC実装を使用してWebアプリケーションを作成しています-サーバー側でhttp://json-rpc.org/wiki/python-json-rpc、クライアント側でjQueryaxajAPI。これはPythonでの最初のJSONサービスの実装であるため、前述のサイト(Apache 2.2で実行されるCGI)から例をコピーしました。
#!/usr/bin/env python
from jsonrpc import handleCGI, ServiceMethod
@ServiceMethod
def echo(msg):
return msg
if __name__ == "__main__":
handleCGI()
(コンソールで)クライアントとして提供されたpythonServiceProxyクラスですべてが正常に機能します。
from jsonrpc import ServiceProxy
s = ServiceProxy("http://localhost:8080/mypage/bin/controller.py")
print s.echo("hello")
しかし、FirebugコンソールでjQueryを使用してajax呼び出しを行おうとすると(私のページのコンテキストで):
var jqxhr = $.getJSON("bin/controller.py", {"params": ["hello"], "method": "echo", "id": 1}, function(data) { alert('success!'); });
私は常にこのエラーを受け取ります:
{"error":{"message":"","name":"ServiceRequestNotTranslatable"},"result":null,"id":""}
私は何が間違っているのですか?