SoapUI调用Web服务
msg = string.Empty;
//string sendAddr, string destAddr, string smContent, int IsNeedreport, DateTime sendTime, int smType
//Web服务的地址(配置在webConfig)
//string url = "http://iservice-sit.xx.com/eProxy/Service/WS_SMS/001?wsdl";
string url = System.Configuration.ConfigurationSettings.AppSettings["SendMsgUrl"];
if (string.IsNullOrEmpty(url)) {
msg = "发送短信的服务地址为空";
return false;
}
//string user = "EIP_EIP_COMMON";
//string password = "EIP_EIP_COMMON";
// string smsIsSecurity=System.Configuration.ConfigurationSettings.AppSettings["SmsIsSecurity"]; //StringBuilder sbStr = new StringBuilder();
//sbStr.Append("<soapenv:Envelope xmlns:soapenv=\"http://schemas.xmlsoap.org/soap/envelope/\" xmlns:sms=\"http://www.tibco.com/schemas/Service_MAS/Resource/SMSEND.xsd\">");
//sbStr.Append("<soapenv:Header>"); ////如果是管控地址需要添加管控账号和密码
//// if (smsIsSecurity.Equals("true"))
//// {
//sbStr.Append("<wsse:Security xmlns:wsse=\"http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd\" SOAP-ENV:mustUnderstand=\"1\"><wsse:UsernameToken>");
//sbStr.AppendFormat("<wsse:Username>{0}</wsse:Username>", user);
//sbStr.AppendFormat("<wsse:Password>{0}</wsse:Password>", password);
//sbStr.Append("</wsse:UsernameToken>");
//sbStr.Append("</wsse:Security>");
//// }
//sbStr.Append("</soapenv:Header>");
//sbStr.Append("<soapenv:Body>");
//sbStr.Append("<sms:SMSENDRequest>");
////1 or more repetitions
//sbStr.Append("<sms:SMENTITY>");
//sbStr.AppendFormat("<sms:SENDADDR>{0}</sms:SENDADDR>", sm.SENDADDR);
//sbStr.AppendFormat("<sms:DESTADDR>{0}</sms:DESTADDR>", sm.DESTADDR);
//sbStr.AppendFormat("<sms:SM_CONTENT>{0}</sms:SM_CONTENT>", sm.SM_CONTENT);
//sbStr.AppendFormat("<sms:NEEDREPORT>{0}</sms:NEEDREPORT>", sm.NEEDREPORT);
//sbStr.AppendFormat("<sms:SENDTIME>{0}</sms:SENDTIME>", GetSendTime(sm.SENDTIME));
//sbStr.AppendFormat("<sms:SM_TYPE>{0}</sms:SM_TYPE>", sm.SM_TYPE);
////sbStr.Append("<sms:SYNC_TIME>2011-11-10T12:00:12</sms:SYNC_TIME>");
////sbStr.Append("<sms:CREATED_BY></sms:CREATED_BY>");
//// sbStr.Append("<sms:CREATION_DATE>2011-11-10T12:12:12</sms:CREATION_DATE>");
//sbStr.Append("</sms:SMENTITY>");
//sbStr.Append("</sms:SMSENDRequest>");
//sbStr.Append("</soapenv:Body>");
//sbStr.Append("</soapenv:Envelope>");
string sendXml = string.Format("<soapenv:Envelope xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance\" xmlns:xsd=\"http://www.w3.org/2001/XMLSchema\" xmlns:soapenv=\"http://schemas.xmlsoap.org/soap/envelope/\" xmlns:urn=\"urn:DefaultNamespace\" xmlns:sms=\"http://www.tibco.com/schemas/Service_MAS/Resource/SMSEND.xsd\"><soapenv:Header xmlns:wsse=\"http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd\"><wsse:Security><wsse:UsernameToken><wsse:Username>{0}</wsse:Username> <wsse:Password>{1}</wsse:Password> </wsse:UsernameToken></wsse:Security></soapenv:Header><soapenv:Body><sms:SMSENDRequest><!--1 or more repetitions:--><sms:SMENTITY><sms:SENDADDR>{2}</sms:SENDADDR><sms:DESTADDR>{3}</sms:DESTADDR><!--Optional:--><sms:SM_CONTENT>{4}</sms:SM_CONTENT><!--Optional:--><sms:NEEDREPORT>{5}</sms:NEEDREPORT><sms:SENDTIME>{6}</sms:SENDTIME><sms:SM_TYPE>{7}</sms:SM_TYPE></sms:SMENTITY></sms:SMSENDRequest></soapenv:Body></soapenv:Envelope>",
user,
password,
sm.SENDADDR,
sm.DESTADDR,
sm.SM_CONTENT,
sm.NEEDREPORT,
GetSendTime(sm.SENDTIME),
sm.SM_TYPE
);
//创建XMLHTTP对象读取WebService数据
MSXML2.XMLHTTP xmlhttp = new MSXML2.XMLHTTP();
xmlhttp.open("POST", url, false, null, null);
xmlhttp.setRequestHeader("SOAPAction", "/Service/intfSendShortMessage-service.serviceagent/intfwsSendShortMessageEndpoint1/SendShortMessageOp");
xmlhttp.setRequestHeader("Content-Type", "application/soap+xml");
//xmlhttp.send(sbStr.ToString());
xmlhttp.send(sendXml); string result = System.Text.Encoding.UTF8.GetString((byte[])xmlhttp.responseBody);
xmlhttp.abort(); xmlhttp = null;
if (result.ToUpper().Contains("<NS0:MESSAGECODE>SUCCESS</NS0:MESSAGECODE>"))//"<ns0:messageCode>success</ns0:messageCode>"
{
return true;
}
else
{
//LogHelper.Error("SmsSendError", result);
msg = result;
return false;
}
SoapUI调用Web服务的更多相关文章
- 动态调用web服务
通常我们在程序中需要调用WebService时,都是通过“添加Web引用”,让VS.NET环境来为我们生成服务代理,然后调用对应的Web服务.这样是使工作简单了,但是却和提供Web服务的URL.方法名 ...
- Android调用Web服务
现在大部分应用程序都把业务逻辑处理,数据调用等功能封装成了服务的形式,应用程序只需要调用这些web服务就好了,在这里就不赘述web服务的优点了.本文总结如何在android中调用Web服务,通过传递基 ...
- 使用ASP.NET AJAX 从脚本中调用Web 服务的应用方法
技能点:通过编写WebService,在页面js中调用WebService来进行数据查询. 网站开发,有些时候需要使用js在页面动态生成一些内容,但还有些数据要通过查询数据库才能获取的. 但由于诸如主 ...
- 在 SQL Server 的存储过程中调用 Web 服务
介绍 一个老朋友计划开发一个应用,基于 .NET 和 Socket,但需要在存储过程中调用 Web 服务. 在这篇文章中我们将分享这个应用的经验,讲述如何在存储过程中调用 Web 服务,并传递参数. ...
- mvc路由引起异步调用web服务的问题
从一篇blog得知使用脚本可以异步调用Web服务,觉得很新鲜,因为自己很少用到Web服务,所以决定写一写看看什么效果. 首先在UI项目(我使用的是MVC4.0)里创建一个Web服务. 添加Web服务后 ...
- 动态调用web服务 --WSHelper.cs
using System;using System.Collections.Generic;using System.Linq;using System.Web;using System.Net;us ...
- 25.C# 异步调用Web服务
1.创建Web服务 1.1VS新建ASP.Net空Web应用程序 1.2添加Web服务新建项 1.3添加GetWeather方法和相关类 using System; using System.Coll ...
- (三)调用web服务
(二)发布第一个WebService服务与DSWL文档解析讲解了如何发布一个web服务,本章主要讲述如何调用一个web服务. 这里有三种方式: 使用代理模式调用,需要将服务端的接口类拷贝到客户端中.( ...
- 采用动态代理方式调用WEB服务(转载+整理)
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.T ...
随机推荐
- idea类似eclipse鼠标技巧java api信息
版权声明:本文博客原创文章,博客,未经同意,不得转载.
- 【高德地图API】从零开始学高德JS API(一)地图展现——仙剑地图,麻点图,街景,室内图
原文:[高德地图API]从零开始学高德JS API(一)地图展现——仙剑地图,麻点图,街景,室内图 摘要:关于地图的显示,我想大家最关心的就是麻点图,自定义底图的解决方案了吧.在过去,marker大于 ...
- Windows Phone 8.1 多媒体(1):相片
原文:Windows Phone 8.1 多媒体(1):相片 Windows Phone 8.1 多媒体(1):相片 Windows Phone 8.1 多媒体(2):视频 Windows Phone ...
- C++外观设计模式模式(三)
3.外观模式总结 引入了外观类.解除了客户类与子系统的耦合性.客户类不须要直接操作子系统,而是由外观类负责处理,对client而言是透明的,客户类仅仅须要操作外观类就能够了,符合"迪迷特法则 ...
- .net中用Action等委托向外传递参数
原文:.net中用Action等委托向外传递参数 一般我们可以使用ref,out达到向外传递参数目的. Action<T>是一个特殊的委托,除了常规应用.我们还可以用它来实现简单 ...
- (转)迎接 Entity Framework 7
对实体框架的下一版本的开发正在顺利进行中.我在 2014 年度北美 TechEd 上第一次了解 EF 团队的工作内容,当时项目经理 Rowan Miller 讨论了 Entity Framework ...
- 安卓Monkey源码分析之运行流程
在<MonkeyRunner源码分析之与Android设备通讯方式>中,我们谈及到MonkeyRunner控制目标android设备有多种方法,其中之一就是在目标机器启动一个monkey服 ...
- [转载]C#播放流媒体的几种方法
做视频开发要学的东西真多,不知道如何入门,乱打乱撞,慢慢摸索吧! 首先搭建Windows Meida Server ,方法很简单,试试就会.在这里需要声明的是,这几种方法 都可以播放 本地视频.并且基 ...
- Spring Resources之介绍和资源接口
1.介绍 不幸的是Java的标准的java.net.URL类和针对不同的URL前缀的标准处理器都不够充分去访问所有的低级资源.例如,美誉标准化的URL实现可能用于去范围需要从classpath中或者相 ...
- Spring IOC之BeanFactory
BeanFactory提供了SpringIOC功能的基础但是它只是直接在用在和第三方框架的整合中,而且现在对于大部分的Spring用户来讲这一句成为了过去.BeanFactory和相关的接口,例如Be ...