【发布时间】:2012-04-17 21:44:43
【问题描述】:
从网页或 JavaScript 代码执行 RPC(远程过程调用)的最佳方式是什么?如果可能的话,我想把它保存在 JavaScript 中,这样我就可以对网页进行实时更新,而不必在 PHP 中做任何事情,以防我的服务器出现故障我仍然希望 JavaScript 来处理页面更新......甚至可能向一个在本地运行的 python shell 脚本......这对 JavaScript 是否合法?
我更喜欢让远程机器处理请求。我看到很多关于 XMLRPC 或 JSONRPC 如何做到这一点的讨论,但是我还没有看到任何好的例子。我猜微软建议使用他们的 XMLhttprequest 但是,我没有看到任何不使用他们的 ActiveX 调用或需要 Internet Explorer 的特殊代码的东西......我只是想要一些简单的方法将命令传递给一些 python/ruby/c++来自网页的代码。
Python 服务器代码(等待 RPC 请求):
import xmlrpclib
from SimpleXMLRPCServer import SimpleXMLRPCServer
def my_awesome_remote_function(str):
return str + "awesome"
server = SimpleXMLRPCServer(("localhost", 8000))
print "Listening on port 8000..."
server.register_function(is_even, "is_even")
server.serve_forever()
示例 JavaScript 代码:
var client = rpc.server("http://localhost:8000/");
var my_local_variable = client.my_awesome_remote_function(param);
是否有人可以指出一个很好的 JSON/JavaScript 示例,它向服务器发送请求并从该服务器获取一些数据?
谢谢!
【问题讨论】:
-
我真的很想看看 100 个 JavaScript 请求的并行基准测试......一个去 PHP、Python、Ruby、Node.JS、Apache (CGI C++) 程序并查看时间需要得到所有回复......它可能有助于我们更多地了解请求模型。我还没有弄清楚如何从 javascript 获取完整的二进制请求并将其传递给 ruby/python 等中的本地对象。
-
如果服务端代码是python,客户端代码是JavaScript,为什么这个标签是PHP?
标签: php javascript json xmlhttprequest rpc