模板页:

 <!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. 序列!序列!- 零基础入门学习Python016

    序列!序列! 让编程改变世界 Change the world by program 你可能发现了,小甲鱼把列表.元组和字符串放在一块儿来讲解是有道理的,我们发现Ta们之间有很多共同点: 1. 都可以 ...

  2. MySQL导入较大sql文件报错max_allowed_packet

    1.查看当前最大允许导入sql文件大小 show VARIABLES like '%max_allowed_packet%'; 2.修改方式 1.永久生效 修改my.cnf文件 vim /etc/my ...

  3. mysql order by 妙用

    今天在做一个2次开发的时候,出现一个需求, 需要在商品分类页里面带一个参数,也就是商品ID, 如果分类链接里面有这个ID的时候就需要把这个商品排在分类商品列表的第1个, 原来的思路是,选择分类后,在P ...

  4. Win7/Win8/Win8.1众多版本,我该选择哪个?

    当你要下载Win7或者Win8/8.1镜像时,是不是被Windows版本种类给吓着了?到底该选择哪种版本的?其实,大多数人用的就那一两个版本,这也是推荐选择的版本,请看快速通道.如果你想了解的更多一点 ...

  5. 《Programming WPF》翻译 第9章 1.自定义控件基础

    原文:<Programming WPF>翻译 第9章 1.自定义控件基础 在写一个自定义控件之前,你需要问的第一个问题是,我真的需要一个自定义控件吗?一个写自定义控件的主要原因是为了用户界 ...

  6. 13.1.17 CREATE TABLE Syntax

    13.1.17 CREATE TABLE Syntax 13.1.17.1 CREATE TABLE ... LIKE Syntax 13.1.17.2 CREATE TABLE ... SELECT ...

  7. C# 调用外部程序,并获取输出和错误信息

    1. 同步模式 public void exec(string exePath, string parameters) { System.Diagnostics.ProcessStartInfo ps ...

  8. Uva11183-Teen Girl Squad(有向图最小生成树朱刘算法)

    解析: 裸的有向图最小生成树 代码 #include<cstdio> #include<cstring> #include<string> #include< ...

  9. 虚拟机环境中安装ubuntu下的mysql-cluster7.3.2(单点服务器)

      部署环境: 系统:ubuntu-12.04.2 LTS -server-i386.iso Cluster:mysql-cluster-gpl-7.3.2-linux-glibc23-i686.ta ...

  10. MSDN中HttpWebRequest/HttpWebResponse用法

    HttpWebRequest myReq = (HttpWebRequest)WebRequest.Create("http://home.cnblogs.com/u/weiweiboqi/ ...