【发布时间】:2011-08-18 15:45:55
【问题描述】:
我正在尝试从 javascript 访问我的本地 drupal 安装的 XML-RPC。代码如下:
$.ajax({
type: "POST",
url: "http://www.sms2.com/services/xmlrpc",
dataType: "xml",
data: {"method": "node.get",
"nid": 1
},
success: function(msg) {
//alert("data: " + msg.type );
console.log("amrit");
}
});
我的 drupal 索引文件位于 /home/dark/web_root/sms2/index.php 和 HTML 文件位于 /home/dark/web_root/sms2/test.html
'sms2' 是从 /etc/hosts 文件中设置的。
这是我得到的回复:
谁能告诉我发生了什么?我尝试了几乎所有可能的选项,但没有用..
POST 选项卡:
它在 XML-RPC 管理屏幕上工作正常!
谢谢
【问题讨论】:
-
还向我们展示“发布”选项卡 - 您要发送哪些数据?从
faultString我猜数据的格式是 XML-RPC 无法区分的......您能否提供一些来自 XML-RPC 过程的代码,其中加载 POST 数据是可见的? -
好的,
.post()方法的问题在于它完全按照它的名称执行 - 它将数据发布到给定的 URL...这意味着在给定的 URL 必须有一个脚本监听 POST 数据,获取$_POST['method']和$_POST['nid']并执行以下操作:$method = $_POST['method']; $nid = $_POST['nid']; return $method($nid);或echo $method($nid);。 sms2.com/services/xmlrpc这里的脚本是什么样的??? -
mmmm...我不知道:(它带有drupal模块(drupal.org/project/services)我指的是groups.drupal.org/node/78093上面的代码
-
嗯,如果它是面向 Drupal 的 XML-RPC,那么首先尝试 Drupal 论坛会更好......我发现是从 PHP 调用它 - 所以你可以调用你自己的 PHP 脚本使用您的 AJAX 调用,然后调用 XML-RPC。这是链接:drupal.org/node/836116
标签: php jquery web-services drupal xml-rpc