0

我在 somefile.ashx 的远程 IIS 服务器上有一个方法,我尝试调用的方法之一是“UserLogInReq”。

UserLogInReq 具有以下成员:

字符串:用户名
字符串:密码
字符串:ClientType

到目前为止,这是我的脚本:

$request = xmlrpc_encode_request('UserLogInReq', array("UserName" => '$username',"Password" =>'$password',"ClientType" => ''));

$context = stream_context_create(array('http' => array(
'method' => "POST",
'header' => "Content-Type: text/xml",
'content' => $request
)));

$file = file_get_contents("http://someserver/somepage.ashx", false, $context);

$response = xmlrpc_decode($file);

if ($response && xmlrpc_is_fault($response)) {
  trigger_error("xmlrpc: $response[faultString] ($response[faultCode])");
} else {
  print_r($response);
}

当我导航到我的 web 服务页面时,在 somepage.ashx 中,列出了此方法以及所有这些成员。但是,当我运行此脚本时,我得到:

Notice: unsupported method called: UserLogInReq (0)

我能找到的所有帮助都与通用 xml-rpc 连接/调用无关。

这是网络服务的权限问题吗?我究竟做错了什么?

谢谢!

4

1 回答 1

0

这最终成为我的一个误解。XML-RPC requriers structs,相当于 php 中的嵌套数组。我只需要在 php 数组上降低几个级别。

于 2012-09-14T18:53:19.183 回答