ThinkPhp調用webservice,thinkphpwebservice
模板頁:
1 <!DOCTYPE html>
2 <html>
3 <head>
4 <meta charset="UTF-8">
5 <title>Insert title here</title>
6 <script type="text/javascript" src="../Public/jquery-1.8.0.min.js"></script>
7 <script type="text/javascript">
8 $(function() {
9 var OCXobj = document.getElementById("PlayViewOCX");
10 OCXobj.SetOcxMode(0);
11 $.ajax({
12 //要用post方式
13 type : "Post",
14 //方法所在頁面和方法名
15 url : "../Home/User/GetPreViewXml",
16 success : function(data) {
17 //返回的數據用data.d獲取內容
18 if (data) {
19 OCXobj.StartTask_Preview_InWnd(data, 0);
20 }
21 },
22 error : function(err) {
23 alert("調用webservice過程中發生了錯誤!");
24 }
25 });
26 });
2738 </script>
39 </head>
40 <body>
41
42 <input id='previewXml' value='{$previewXml}' type='hidden' />
43 <div>
44 <input type="button" value="開始預覽"
45 id="StartPlayView" /> <br />
46 <div >
47 <br />
48 <!-- 添加預覽控件(需要先在windows下注冊) -->
49 <object classid="clsid:D5E14042-7BF6-4E24-8B01-2F453E8154D7"
50 id="PlayViewOCX" width="750" height="450" name="ocx"> </object>
51 </div>
52 </div>
53 </body>
54 </html>
控制器代碼:

![]()
1 function GetPreViewXml()
2 {
3 $client = new \SoapClient("http://192.168.1.113/services/CmsService?wsdl");
4 $funs = array(
5 $client->__getFunctions()
6 );
7
8 $userLogin = new \stdClass();
9 $userLogin->userName = 'admin';
10 $userLogin->pwd = '5B9BD37AE194BCE2D53666BCB9D99B01';
11 $userLogin->clientIp = '192.168.1.105';
12 $userLogin->clientPort = '80';
13 $userLogin->cmsUrl = 'http://192.168.1.113';
14
15 $loginResponse = $client->__call("userLogin", array(
16 $userLogin
17 ));
18
19 $getCameraInfoByDeviceInfo = new \stdClass();
20 $getCameraInfoByDeviceInfo->indexCode = 2;
21 $getCameraInfoByDeviceInfo->sessionId = $loginResponse->return->sessionId;
22 $getCameraInfoByDeviceInfoResponse = $client->__call("getCameraInfoByDeviceInfo", array(
23 $getCameraInfoByDeviceInfo
24 ));
25
26 $getPreviewParam = new \stdClass();
27 $getPreviewParam->sessionId = $loginResponse->return->sessionId;
28 $cameraArray = $getCameraInfoByDeviceInfoResponse->return->cameraArray;
29 $cameraIndexCode = '';
30 if (is_array($cameraArray)) {
31 $cameraIndexCode = $cameraArray[0]->indexCode;
32 } else {
33 $cameraIndexCode = $cameraArray->indexCode;
34 }
35 $getPreviewParam->cameraIndexCode = $cameraIndexCode;
36
37 $getPreviewParamResponse = $client->__call("getPreviewParam", array(
38 $getPreviewParam
39 ));
40
41 $this->ajaxReturn($getPreviewParamResponse->return->previewXml);
42 }
View Code