求助: odoo8 xmlrpc接口中php编程需要调用ripcord库,调用失败
-
环境: ubuntu12.04 odoo8 php5
官方说明是:
Note
These examples use the Ripcord library, which provides a simple XML-RPC API. Ripcord requires that XML-RPC support be enabled in your PHP installation.
Since calls are performed over HTTPS, it also requires that the OpenSSL extension be enabled
于是:
sudo apt-get install php5-xmlrpc
sudo apt-get install openssl
sudo apt-get install libssl-dev
sudo apt-get install libssl0.9.8
sudo apt-get install libgtk2.0-dev
<!DOCTYPE html>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<html>
<body>
<h1>odoo php api test</h1>
<?php
echo "Hello World!0.1";
require_once('ripcord.php');
$url = "http://10.0.10.219:8069";
echo "Hello World!0";
$db = "flaginfo";
$username = "admin";
$password = "111111";
echo "Hello World!1";
$models = ripcord::client("$url/xmlrpc/2/object");
echo "Hello World!3";
?>
</body>
</html>
运行结果:
odoo php api test
Hello World!0.1
调用失败。 这个如何定位问题? -
[attachurl=1]
<br /><?php<br />//exit(phpinfo());<br /><br />echo "Hello World!0.1";<br />require_once('lib\ripcord.php');<br />$url = "http://119593-8-0-eb993b.runbot.odoo.com/";<br />echo "Hello World!0";<br />$db = "119593-8-0-eb993b-all";<br />$username = "admin";<br />$password = "admin";<br />echo "Hello World!1";<br />$models = ripcord::client("$url/xmlrpc/2/object");<br />var_dump($models);<br /><br />echo "Hello World!3";<br />?><br />
<br /><br /><br />Hello World!0.1Hello World!0Hello World!1object(Ripcord_Client)#2 (12) {<br /> ["_url:private"]=><br /> string(57) "http://119593-8-0-eb993b.runbot.odoo.com//xmlrpc/2/object"<br /> ["_transport:private"]=><br /> object(Ripcord_Transport_Stream)#1 (2) {<br /> ["options:private"]=><br /> array(0) {<br /> }<br /> ["responseHeaders"]=><br /> NULL<br /> }<br /> ["_outputOptions:private"]=><br /> array(5) {<br /> ["output_type"]=><br /> string(3) "xml"<br /> ["verbosity"]=><br /> string(6) "pretty"<br /> ["escaping"]=><br /> array(1) {<br /> [0]=><br /> string(6) "markup"<br /> }<br /> ["version"]=><br /> string(6) "xmlrpc"<br /> ["encoding"]=><br /> string(5) "utf-8"<br /> }<br /> ["_namespace:private"]=><br /> NULL<br /> ["_rootClient:private"]=><br /> *RECURSION*<br /> ["_cloneObjects:private"]=><br /> bool(false)<br /> ["_multiCall:protected"]=><br /> bool(false)<br /> ["_multiCallArgs:protected"]=><br /> array(0) {<br /> }<br /> ["_response"]=><br /> string(0) ""<br /> ["_request"]=><br /> string(0) ""<br /> ["_throwExceptions"]=><br /> bool(false)<br /> ["_autoDecode"]=><br /> bool(true)<br />}<br />Hello World!3<br />
测试完全没有问题..... -
[quote author=mrshelly link=topic=17439.msg31611#msg31611 date=1450161290]
[attachurl=1]<br /><?php<br />//exit(phpinfo());<br /><br />echo "Hello World!0.1";<br />require_once('lib\ripcord.php');<br />$url = "http://119593-8-0-eb993b.runbot.odoo.com/";<br />echo "Hello World!0";<br />$db = "119593-8-0-eb993b-all";<br />$username = "admin";<br />$password = "admin";<br />echo "Hello World!1";<br />$models = ripcord::client("$url/xmlrpc/2/object");<br />var_dump($models);<br /><br />echo "Hello World!3";<br />?><br />
<br /><br /><br />Hello World!0.1Hello World!0Hello World!1object(Ripcord_Client)#2 (12) {<br /> ["_url:private"]=><br /> string(57) "http://119593-8-0-eb993b.runbot.odoo.com//xmlrpc/2/object"<br /> ["_transport:private"]=><br /> object(Ripcord_Transport_Stream)#1 (2) {<br /> ["options:private"]=><br /> array(0) {<br /> }<br /> ["responseHeaders"]=><br /> NULL<br /> }<br /> ["_outputOptions:private"]=><br /> array(5) {<br /> ["output_type"]=><br /> string(3) "xml"<br /> ["verbosity"]=><br /> string(6) "pretty"<br /> ["escaping"]=><br /> array(1) {<br /> [0]=><br /> string(6) "markup"<br /> }<br /> ["version"]=><br /> string(6) "xmlrpc"<br /> ["encoding"]=><br /> string(5) "utf-8"<br /> }<br /> ["_namespace:private"]=><br /> NULL<br /> ["_rootClient:private"]=><br /> *RECURSION*<br /> ["_cloneObjects:private"]=><br /> bool(false)<br /> ["_multiCall:protected"]=><br /> bool(false)<br /> ["_multiCallArgs:protected"]=><br /> array(0) {<br /> }<br /> ["_response"]=><br /> string(0) ""<br /> ["_request"]=><br /> string(0) ""<br /> ["_throwExceptions"]=><br /> bool(false)<br /> ["_autoDecode"]=><br /> bool(true)<br />}<br />Hello World!3<br />
测试完全没有问题.....
[/quote]
大概是没有ripcord的库, google上的, 谢谢