PHP開發Web服務
PHP開發Web服務
WSO2 WSF/PHP(WSO2 Web Services Framework/PHP,WSO2 Web服務框架) 是一個PHP擴充套件,允許用來建立和使用Web服務。它支援SOAP1.1、SOAP1.2、MTOM、Web服務定址、Web服務安全,也支援REST風格的呼叫。WSO2 WSF/PHP最新的版本(v2.0.0)剛釋出。
下面是一個簡短的指南解釋了怎樣用WSO2 WSF/PHP擴充套件建立一個簡單的計算器服務。
(假設:Apache HTTP伺服器已經安裝在你的機器上,且你基本熟悉在Apache伺服器上執行PHP指令碼)
第一步:安裝WSO2 WSF/PHP擴充套件
在Ubuntu下,有下列步驟:
1. apt-get install php5
2. apt-get install php5-dev
3. apt-get libapache2-mod-php5
3. apt-get install libxml2
4. apt-get install libxml2-dev
5. 下載 WSF/PHP v2.0.0 並解壓到一個目錄
6. 在命令列訪問該目錄,以“root”執行下列命令:
./configure
make
make install
7. /etc/init.d/apache2 restart
第二步:編寫計算器服務
建立一個名為CalculatorService.php的指令碼,且放入Apache HTTP伺服器的web root(通常是 /var/www)。
<?php
function calculate($inMessage){
$simplexml = new SimpleXMLElement($inMessage->str);
$operand1 = $simplexml->param1[0];
$operand2 = $simplexml->param2[0];
$operation = $simplexml->param3[0];
if($operation != null)
{
switch($operation)
{
case “add” : $result= $operand1 + $operand2; break;
case “sub” : $result= $operand1 – $operand2; break;
case “mul” : $result= $operand1 * $operand2; break;
case “div” : $result= $operand1 / $operand2; break;
}
}
$response = <<<XML
<result>$result</result>
XML;
$returnMsg = new WSMessage($response);
return $returnMsg;
}
$service = new WSService(array(“operations” => array(“calculate”)));
$service->reply();
?>
一旦部署後,可以從http://localhost:<port>/CalculatorService.php訪問它。
第三步:編寫計算器客戶端
編寫一個客戶端,呼叫此計算器服務,並列印結果。
該指令碼命名為CalculatorClient.php,且放入Apache HTTP伺服器的web root。
不要忘了改變Apache伺服器的埠(即http://localhost:81/CalculatorService.php)來匹配伺服器。
<?php
$requestPayload = <<<XML
<calculate>
<param1>100</param1>
<param2>43</param2>
<param3>add</param3>
</calculate>
XML;
try{
$message = new WSMessage($requestPayload,
array(“to” => “http://localhost:81/CalculatorService.php”));
$client = new WSClient();
$response = $client->request($message);
echo “Answer : $response->str”;
}
catch (Exception $e){
if ($e instanceof WSFault){
$fault = $e;
printf(“Soap Fault received. Code: `%s` .Reason: `%s`/n”,
$fault->code, $fault->reason);
}else{
printf(“Exception occurred. Message: `%s`/n”, $e->getMessage());
}
}
?>
第四步:訪問服務
通過執行CalculatorClient.php訪問服務,如下:
http://localhost:<port>/CalculatorService.php
以上只是建立計算器服務的基本例子。
相關文章
- PHP開發阿里雲簡訊服務介面PHP阿里
- Flask RESTful Web服務的開發套路總結FlaskRESTWeb
- 使用apache CXF開發第一個Web服務ApacheWeb
- Android服務端開發之使用Eclipse搭建Java Web服務端Android服務端EclipseJavaWeb
- linux 開啟PHP服務LinuxPHP
- PHP 系列:PHP Web 開發基礎PHPWeb
- 基於gin的golang web開發:服務間呼叫GolangWeb
- PHP和MySQL Web開發PHPMySqlWeb
- web學習:服務端開發的業務需求-路由解析Web服務端路由
- 乾淨架構在 Web 服務開發中的實踐架構Web
- Web 開發手冊——PHP 開發環境搭建WebPHP開發環境
- 自開發Web應用和SAPCustomerDataCloudIdentity服務的整合WebCloudIDE
- 搭建 Restful Web 服務RESTWeb
- Linux web服務LinuxWeb
- HarmonyOS 位置服務開發指南
- 家政服務app開發功能APP
- 安卓開發之服務Service安卓
- 使用CXF開發RESTFul服務REST
- 服務端開發小感服務端
- 流程管理中WEB表單開發服務需求分析及設計思路Web
- Nginx服務系列——靜態資源web服務NginxWeb
- ubuntu 14.04中開啟web服務步驟UbuntuWeb
- go語言遊戲服務端開發(三)——服務機制Go遊戲服務端
- Web網站服務(二)Web網站
- 保障Web服務的安全Web
- 構建Web API服務WebAPI
- 4_webflux服務端開發WebUX服務端
- 微信開發服務號鑑權
- CIFS服務端開發筆記服務端筆記
- 2 面向服務的開發方法
- 如何使用PHP開發高效的WEB系統PHPWeb
- GeoServer地圖開發解決方案(四):釋出Web地圖服務(WMS)篇Server地圖Web
- 用“MEAN”技術棧開發web應用(二)express搭建服務端框架WebExpress服務端框架
- HarmonyOS 裝置管理開發:USB 服務開發指導
- PHP實現代理服務功能PHP
- 在nginx上搭建php服務NginxPHP
- HarmonyOS電話服務開發指導
- 如何開發同城生活服務小程式?