模板页:

 <!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
<script type="text/javascript" src="../Public/jquery-1.8.0.min.js"></script>
<script type="text/javascript">
$(function() {
var OCXobj = document.getElementById("PlayViewOCX");
OCXobj.SetOcxMode(0);
$.ajax({
//要用post方式
type : "Post",
//方法所在页面和方法名
url : "../Home/User/GetPreViewXml",
success : function(data) {
//返回的数据用data.d获取内容
if (data) {
OCXobj.StartTask_Preview_InWnd(data, 0);
}
},
error : function(err) {
alert("调用webservice过程中发生了错误!");
}
});
});
</script>
</head>
<body> <input id='previewXml' value='{$previewXml}' type='hidden' />
<div>
&nbsp;&nbsp;&nbsp;&nbsp;<input type="button" value="开始预览"
id="StartPlayView" /> <br />
<div style="width: 750px; float: left; overflow: hidden">
&nbsp;&nbsp;&nbsp;<br /> &nbsp;&nbsp;&nbsp;&nbsp;
<!-- 添加预览控件(需要先在windows下注册) -->
<object classid="clsid:D5E14042-7BF6-4E24-8B01-2F453E8154D7"
id="PlayViewOCX" width="750" height="450" name="ocx"> </object>
</div>
</div>
</body>
</html>

控制器代码:

 function GetPreViewXml()
{
$client = new \SoapClient("http://192.168.1.113/services/CmsService?wsdl");
$funs = array(
$client->__getFunctions()
); $userLogin = new \stdClass();
$userLogin->userName = 'admin';
$userLogin->pwd = '5B9BD37AE194BCE2D53666BCB9D99B01';
$userLogin->clientIp = '192.168.1.105';
$userLogin->clientPort = '80';
$userLogin->cmsUrl = 'http://192.168.1.113'; $loginResponse = $client->__call("userLogin", array(
$userLogin
)); $getCameraInfoByDeviceInfo = new \stdClass();
$getCameraInfoByDeviceInfo->indexCode = 2;
$getCameraInfoByDeviceInfo->sessionId = $loginResponse->return->sessionId;
$getCameraInfoByDeviceInfoResponse = $client->__call("getCameraInfoByDeviceInfo", array(
$getCameraInfoByDeviceInfo
)); $getPreviewParam = new \stdClass();
$getPreviewParam->sessionId = $loginResponse->return->sessionId;
$cameraArray = $getCameraInfoByDeviceInfoResponse->return->cameraArray;
$cameraIndexCode = '';
if (is_array($cameraArray)) {
$cameraIndexCode = $cameraArray[0]->indexCode;
} else {
$cameraIndexCode = $cameraArray->indexCode;
}
$getPreviewParam->cameraIndexCode = $cameraIndexCode; $getPreviewParamResponse = $client->__call("getPreviewParam", array(
$getPreviewParam
)); $this->ajaxReturn($getPreviewParamResponse->return->previewXml);
}

ThinkPhp调用webservice的更多相关文章

  1. ThinkPHP使用soapclient调用webservice接口

    1,开启 php.ini 这2个服务 12 extension=php_openssl.dllextension=php_soap.dll 以公共天气预报webservice为例,采用thinkPHP ...

  2. 一个简单的webservice的demo(下)winform异步调用webservice

    绕了一大圈,又开始接触winform的项目来了,虽然很小吧.写一个winform的异步调用webservice的demo,还是简单的. 一个简单的Webservice的demo,简单模拟服务 一个简单 ...

  3. 调用webservice进行身份验证

    因为同事说在调用webservice的时候会弹出身份验证的窗口,直接调用会返回401,原因是站点部署的时候设置了身份验证(账号名称自己配置).因而在调用的时候需要加入身份验证的凭证. 至于如何获取身份 ...

  4. java接口调用——webservice就是一个RPC而已

    很多新手一听到接口就蒙逼,不知道接口是什么!其实接口就是RPC,通过远程访问别的程序提供的方法,然后获得该方法执行的接口,而不需要在本地执行该方法.就是本地方法调用的升级版而已,我明天会上一篇如何通过 ...

  5. Android调用WebService

    这两天给老师做地铁app的demo,与后台的交互要用WebService,还挺麻烦的.所以想写点,希望有用. Web Services(Web服务)是一个用于支持网络间不同机器互操作的软件系统,它是一 ...

  6. C# 调用webservice 几种办法(转载)

    原文地址: http://www.cnblogs.com/eagle1986/archive/2012/09/03/2669699.html //=========================== ...

  7. 【Java EE 学习 80 下】【调用WebService服务的四种方式】【WebService中的注解】

    不考虑第三方框架,如果只使用JDK提供的API,那么可以使用三种方式调用WebService服务:另外还可以使用Ajax调用WebService服务. 预备工作:开启WebService服务,使用jd ...

  8. C#winForm调用WebService的远程接口

    Web Service 的创建简单编码.发布和部署 上一篇详细概述了WebService的创建,编码,发布和部署,那么作为客户端的程序如何访问远程端的WebService 接下来看一下具体步骤:   ...

  9. 【学习篇:他山之石,把玉攻】jquery实现调用webservice

    1.webservice端 using System; using System.Collections.Generic; using System.Web; using System.Web.Ser ...

随机推荐

  1. jquery-1.10.2 获取checkbox的checked属性总是undefined

    项目中用的jquery-1.10.2 需要检测一个checkbox的选中状态,想当然的用 .attr("checked") ,结果发现,无论是否选中,这个值都是 undefined ...

  2. c#获取特性DescriptionAttribute的值

    int detailId = Convert.ToInt32(id); BillLoanApplyDetail model = _billLoadApplyDetail.GetBillLoanAppl ...

  3. tomcat server.xml 配置示例

    规划:     网站网页目录:/web/www      域名:www.test1.com     论坛网页目录:/web/bbs     URL:bbs.test1.com/bbs     网站管理 ...

  4. Java抽象类深入理解-----模板方法设计模式(Templete Method)

    模板方法设计模式(Templete Method) 定义一个操作中的算法骨架,而将一些可变部分的实现延迟到子类中. 模板方法设计模式使得子类可以不改变一个算法的结构即可重新定义该算法某些特定的步骤. ...

  5. IOS 开发-- 常用-- 核心代码

    网络请求 (包含block 和 delegate) 数据持久化技术 手势处理’ XML数据解析 多线程实现 核心动画编程 地图定位功能 CoreData数据持久化技术 本地通知和推送通知 常用宏定义 ...

  6. [HDU] 2094 产生冠军(拓扑排序+map)

    题目地址:http://acm.hdu.edu.cn/showproblem.php?pid=2094 注意每组数据处理前,map要清空. #include<cstdio> #includ ...

  7. LeetCode_Set Matrix Zeroes

    Given a m x n matrix, if an element is 0, set its entire row and column to 0. Do it in place. 很挫的一个想 ...

  8. poj 3321

    题目链接 题意:一开始1-n都有苹果,Q查询以x为根下存在多少. 树状数组+DFS+队列转换 这题纠结了2天,一开始一点思路都没有,看大神都是吧树状数组转换成队列来做 看了好久都不知道怎么转换的, 解 ...

  9. Spoj1771-Yet Another N-Queen Problem(精确覆盖)

    Description After solving Solution to the n Queens Puzzle by constructing, LoadingTime wants to solv ...

  10. 使用linux系统做路由转发

    使用linux系统(PC机)做路由转发 关键字:linux,Fedora,route,iptables,ip_forward 最近做网络实验,在实验过程中需要用到linux的转发功能,但是遇到一些问题 ...