[英]cakephp webservice
我在使用 cakephp 創建網絡服務時遇到問題。 這就是我創建這個網絡服務所做的。 為此,我使用 NuSOAP - PHP 的 Web 服務工具包。 我創建了一個名為 WsController 的控制器並在其上導入庫。
class WsController extends AppController{
var $uses = array();
function info() {
$this->layout= null;
$ns="http://www.techvoicellc.com/Tutorials//";
$server = new soap_server();
$server->configureWSDL('mostafa',$ns);
$server->wsdl->schemaTargetNamespace=$ns;
$server->wsdl->addComplexType('ArrayOfstring','complexType',
'array','','SOAP-ENC:Array',array()
,array(array('ref'=>'SOAP-ENC:arrayType','wsdl:arrayType'=>'string[]')),
'xsd:string');
$server->register('sum',
array('x' => 'xsd:integer','y' => 'xsd:integer'),
array('z' => 'xsd:integer'),
$ns,
"$ns#sum",
'rpc',
'encoded',
'documentation' // documentation
);
$server->service($HTTP_RAW_POST_DATA);
}
function sum($x,$y){
$z=$x+$y;
return new soapval('return','xsd:integer',$z);
}
}
我在這樣的控制器操作中創建了 clint
function index() {
$wsdl = 'http://localhost/asd/ws/info?wsdl';
$client = new nusoap_client ( $wsdl, true );
$this->client = new nusoap_client($wsdl, true);
$param1 = array ('x' => 2, 'y' => 1 );
$a = $client->call ( 'sum', $param1 );
echo $a;
}
盡管我在非蛋糕項目中創建了它並且它的工作非常好,但它沒有任何作用
希望有人告訴我在 cake php 中創建網絡服務的最佳實踐是什么
在 CakePHP 中開發 Web 服務非常容易。 我已經做過好幾次了。 檢查以下步驟。
class MyWebServicesController extends AppController {
var $name = 'MyWebServices';
var $layout = "ajax";
function index() {
$server = new SoapServer(null);
$server->setObject($this);
$server->handle();
exit(0);
}
public function addNumbers($a,$b) {
return $a+$b
}
}
現在您的 Web 服務托管在http://webroot/MyWebServices
現在您可以像下面這樣調用 addNumbers。
$client = new SoapClient(null, array('location' => "http://webroot/MyWebServices");
$sum = $client->addNumbers(1+2);
最好創建寧靜的 Web 服務。 CakePHP 為 REST 內置了一切。 您所要做的就是啟用它並創建 json/xml 視圖。
這是您起點的鏈接: http : //book.cakephp.org/2.0/en/development/rest.html
您是否需要 SOAP Web 服務?
您是否一直在以合理的價格尋找適合您企業的最佳CakePHP開發服務 ? 不用再看了,因為PSD轉換是該領域中最好的。 我們在這項技術上擁有多年的經驗,能夠提供無縫工作的有效解決方案。 我們提供一流的CakePHP開發服務和卓越的客戶支持。 了解更多關於我們的信息,請訪問我們的官方網站。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.