我从http://phpxmlrpc.sourceforge.net/需要与XML-RPC帮助在PHP
下载PHPXMLRPC我有我的web服务器被称为XML-RPC测试的文件夹,并有一个简单的测试PHP应用程序创建的。
<?php
include 'xmlrpc.inc';
include 'xmlrpcs.inc';
function sumAndDifference ($params) {
// Parse our parameters.
$xval = $params->getParam(0);
$x = $xval->scalarval();
$yval = $params->getParam(1);
$y = $yval->scalarval();
// Build our response.
$struct = array('sum' => new xmlrpcval($x + $y, 'int'),
'difference' => new xmlrpcval($x - $y, 'int'));
return new xmlrpcresp(new xmlrpcval($struct, 'struct'));
}
// Declare our signature and provide some documentation.
// (The PHP server supports remote introspection. Nifty!)
$sumAndDifference_sig = array(array('struct', 'int', 'int'));
$sumAndDifference_doc = 'Add and subtract two numbers';
new xmlrpc_server(array('sample.sumAndDifference' =>
array('function' => 'sumAndDifference',
'signature' => $sumAndDifference_sig,
'docstring' => $sumAndDifference_doc)));
?>
我已经加载了PHPXMLRPC调试,进入地址:,端口:和路径:但是当我按下执行键List available methods
没有任何反应。
问题1:为什么我的本地调试器不工作?
所以我在这里上网http://phpxmlrpc.sourceforge.net/jsxmlrpc/debugger/debugger.html它似乎更好。
但是,当我在这里按执行按钮(在输入我的服务器详细信息后),我收到以下消息。
故障代码:[5]原因:'没有收到来自远程服务器的200 OK。 (发送失败)”
我认为这可能意味着有什么问题我的本地服务器和WAN所以我在http://feedvalidator.org/测试的应用程序,我其实做得到回应。
1. <?xml version="1.0"?>
2. <methodResponse>
3. <fault>
4. <value>
5. <struct><member><name>faultCode</name>
6. <value><int>105</int></value>
7. </member>
8. <member>
9. <name>faultString</name>
10. <value><string>XML error: Invalid document end at line 1, column 1</string></value>
11. </member>
12. </struct>
13. </value>
14. </fault>
15. </methodResponse>
我认为这是一个错误,因为没有有效载荷被发送。
问题2:我该如何解决这个问题?我怎样才能得到一个非常简单的xmlrpc服务器使用PHP?
我花了大约一周的时间试图让这个工作放弃之前。多浪费时间! – jax 2010-11-20 15:14:13