C#如何使用Soap协议调用WebService?
WebService是什么?它的作用?
WebService是一个平台独立、低耦合的、自包含的、基于可编程的可使用xml描述、调用的web应用程序,用于开发分布式的交互式的应用程序。
Soap是什么?它的作用?
Simple Object Access Protocol(简单对象访问协议)是交换数据的一种协议规范,是一种轻量的、简单的、基于xml的协议,用于web应用程序之间交换信息或数据交互的结构化或固化的信息。
如何创建基于Soap协议的WebService?
1、创建一个基于SoapHeader类的头部信息类
public class Header : SoapHeader
{
private string _code = string.Empty;
private string _token = string.Empty; public string Code
{
get
{
return _code;
} set
{
_code = value;
}
} public string Token
{
get
{
return _token;
} set
{
_token = value;
}
} public Header()
{ } public Header(string r_code, string r_token)
{
this._code = r_code;
this._token = r_token;
}
}
2、声明类&创建验证方法
public Header header = new Header();
string code = "simoje";
string token = "helloworld";
private bool ValidateToken(string _code, string _token)
{
if (header.Code == code && header.Token == token)
{
return true;
}
else
{
return false;
}
}
3、创建成员方法
[SoapHeader("header")]
[WebMethod]
public string HelloWorld(string para)
{
// do some things
}
注:SoapHeader括号中是声明的类实例名
如何使用Soap协议调用WebService?
1、引用WebService,取名为hello_service
2、声明Header类,并传入code与token
hello_service.Header header = new hello_service.Header();
validate.Code = "simoje";
validate.Token = "hello_world";
3、调用HelloWorld方法
hello_service.Simoje_APISoapClient api = new hello_service.Simoje_APISoapClient();
JObject jo = new JObject(
new JProperty("para", "some paras"));
api.HelloWorld(header, jo.ToString());
注:JObject为newtonsoft.dll封装的json类,可在http://www.cnblogs.com/simoje/p/4766215.html得到。
C#如何使用Soap协议调用WebService?的更多相关文章
- 使用CXF实现基于Soap协议的WebService
本文介绍使用CXF实现基于Soap协议的WebService(CXF的版本是3.0.0) 一. 前言 Java有三种WebService规范:Jax-WS,Jax-RS,Jaxm 1. Jax-WS( ...
- Java 发送SOAP请求调用WebService,解析SOAP报文
https://blog.csdn.net/Peng_Hong_fu/article/details/80113196 记录测试代码 SoapUI调用路径 http://localhost:8082/ ...
- 在ASP.NET Web Application中通过SOAP协议调用Bing搜索服务
本文介绍了如何在ASP.NET Web Application中将Bing搜索作为Web Service来使用,并通过HTTP的SOAP协议在ASP.NET Web Application中调用Bin ...
- Android之SOAP协议与WebService服务器交互,解决超时的问题
网络搜索大部分不能实际解决问题.特意将解决方法写下.创建MyAndroidHttpTransport 类 , package com.example.omhandroid.lib; import or ...
- Java调用WebService方法总结(8)--soap.jar调用WebService
Apache的soap.jar是一种历史很久远的WebService技术,大概是2001年左右的技术,所需soap.jar可以在http://archive.apache.org/dist/ws/so ...
- iOS webservice接口soap协议调用遇到的问题
这是第一次调webservice的接口,并且后台没太做过移动端的接口,所以遇到了很多让人崩溃的困难.吃一堑长一智,所以这种时候懒得写博客的我就要趁着这股热乎劲把这次的过程记录下来啦~ 首先要做的就是, ...
- HttpURLConnection 直接发送soap消息调用webservice
httpConn = (HttpURLConnection) new URL(urlString).openConnection(); httpConn.setRequestProperty(& ...
- webservice第二篇【自定义webservice服务、soa、uddi概念、soap协议】
自定义webservice服务 我们在上一章节中已经使用wsimport生成本地代理来调用webservice的服务了,其实我们自己写的web应用程序也是可以发布webservice的 我们发布了we ...
- [转]Net 下采用GET/POST/SOAP方式动态调用WebService C#实现
本文转自:http://www.cnblogs.com/splendidme/archive/2011/10/05/2199501.html 一直以来,我们都为动态调用WebService方法而烦恼. ...
随机推荐
- 这些Javascript知识点,面试和平时开发都需要
No1.语法和类型 1.声明定义 变量类型:var,定义变量:let,定义块域(scope)本地变量:const,定义只读常量. 变量格式:以字母.下划线“_”或者$符号开头,大小写敏感. ...
- android应用开发(十):widget的使用
1.自定义widget必须继承AppWidgetProvider 源码:http://www.jinhusns.com/Products/Download/?type=xcj 2.AndroidMan ...
- img在div中居中的问题
Img是内联元素,要设置其margin属性使其居中,就要将其转换为块元素display:block;然后利用margin:0 auto;实现图片的水平居中:(有的设计师为图片再加个div标签,然后通过 ...
- GridView嵌套在ScrollView里只有一行的问题
遇到这个问题 网上找到的解决办法: 方法一:就是上面说的通过计算出来ListView或者GridView中的子列高度和 进行显示:public void setListViewHeightBasedO ...
- GJM:Unity导入百度地图SDK [转载]
感谢您的阅读.喜欢的.有用的就请大哥大嫂们高抬贵手"推荐一下"吧!你的精神支持是博主强大的写作动力以及转载收藏动力.欢迎转载! 版权声明:本文原创发表于 [请点击连接前往] ,未经 ...
- ASP.NET API(MVC) 对APP接口(Json格式)接收数据与返回数据的统一管理
话不多说,直接进入主题. 需求:基于Http请求接收Json格式数据,返回Json格式的数据. 整理:对接收的数据与返回数据进行统一的封装整理,方便处理接收与返回数据,并对数据进行验证,通过C#的特性 ...
- SQL复制表结构或表数据
需求: 软件开发过程中,一般会部署两个数据库:一个测试数据库提供给开发和测试过程使用:一个运维数据库提供上线使用.当需求变化需增加表时,会遇到数据库表结构或表数据同步的问题,这时就要复制表结构或表数据 ...
- 深入理解和应用display属性(一)
Display在官方定义:规定元素应该生成的框的类型.本文只重点分析常用的6个值:none.block.inline.inline-block.inherit.flex.其他table.list-it ...
- Android中的AlertDialog使用示例一(警告对话框)
在Android开发中,我们经常会需要在Android界面上弹出一些对话框,比如询问用户或者让用户选择.这些功能我们叫它Android Dialog对话框,AlertDialog实现方法为建造者模式. ...
- iOS 二维码扫描
// 导入 AVFoundation.framwork 框架#import "HDCodeViewController.h" #import "HDNormalViewC ...