如何将Json Rpc数据传递给指定的回调函数,就像Json一样。 您可以通过在URL中指定回调参数来获取响应数据。
例如:
var url = "http://...sample/..?alt=new&callback=dispUser";
var script = document.createElement('script');
script.src = url;
document.body.appendChild(script);
然后结果将是这样的
dispUser({ “ID”: ”” });
但在Json Rpc我不能,有没有办法通过声明回调来获取Json Rpc的响应数据。如果没有,我将如何在客户端显示这些数据。因为我只能使用Json Rpc或SOAP XML获得这些api服务,这就是文档所说的内容。
答案 0 :(得分:2)
您的示例是JSONP样式。以下是JSON-RPC样式的示例:
var mathService;
function init() {
mathService = RPC.consume('http://foo.bar/mathematics.smd', mathReady);
}
function mathReady() {
mathService.cuberoot(9, function(root) {
$('#example_output').html(root);
});
}
window.onload = init;
如果JSON-RPC服务没有通过SMD描述自己,你可能会写这样的东西:
function init() {
RPC.callMethod('http://foo.bar/mathematics.php', {
method: 'cuberoot',
params: [ 9 ]
}, function(error, result) {
$('#example_output').html(result);
});
}
window.onload = init;
从JavaScript客户端(例如浏览器)执行JSON-RPC有很多库,每个库在调用约定时可能略有不同。