Asp.net页面中调用soapheader进行验证的操作步骤

本文为大家分享了Asp.net页面中调用以SOAP头作验证的web services操作步骤,供大家参考,具体内容如下

第一步:用来作SOAP验证的类必须从SoapHeader类派生,类中Public的属性将出现在自动产生XML节点中,即:

<soap:Header>
  <UserSoapHeader xmlns="http://tempuri.org/">
   <UserName>string</UserName>
   <Pwd>string</Pwd>
  </UserSoapHeader>
</soap:Header>

public class UserSoapHeader : SoapHeader
{
  private string _userName;
  private string _pwd;

  //public的属性将自动生成xml结点
  public string UserName
  {
    get { return _userName; }
    set { _userName = value; }
  }

  public string Pwd
  {
    get { return _pwd; }
    set { _pwd = value; }
  }
}

第二步:
在WebServices服务类中添加一个public的属性(必须public),类型为从UserSoapHeader

/// <summary>
/// WebService 的摘要说明
/// </summary>
[WebService(Namespace = "http://tempuri.org/")]
[WebServiceBinding(ConformsTo = WsiProfiles.BasicProfile1_1)]
public class WebService : System.Web.Services.WebService
{
//此属性将作为验证属性
//方法的SoapHeaderAttribute中的名称与此变量一致
  public UserSoapHeader userHeader;

  public WebService()
  {
    //如果使用设计的组件,请取消注释以下行
    //InitializeComponent();
  }

  [WebMethod]
  [SoapHeader("userHeader")]//这里很重要,名称要和定义的验证属性名称一致!
  public string HelloWorld()
  {
    //进入此方法后,userHeader将自动有值
    if (userHeader != null)
    {
      return "this is retVal : " + userHeader.UserName;
    }
    return " check not successed ";
  }
}

第三步:在客户端进行调用:
1.       添加WEB引用
2.       实例化服务类
3.       实例化SOAP头(在客户端将会自动生成作来作验证的属性;该属性类型为:UserSoapHeader;该属性的名称为:UserSoapHeaderValue) ;自动生成的属性生成规则为:验证类型名称+Value;
4.       调用服务提供的方法。

WebService s = new WebService();
    UserSoapHeader a = new UserSoapHeader();
    a.UserName = "admin";
    a.Pwd = "zz";
    s.UserSoapHeaderValue = a; //此属性是自动生成的
    Response.Write( s.HelloWorld() ); // this is retVal : admin

很简单吧,希望大家都能够掌握asp.net中用soapheader作验证的步骤,谢谢大家的阅读。

(0)

相关推荐

  • ASP.NET通用权限验证的实现代码思路

    本篇介绍通用权限验证的实现代码思路,总共分为导入参数.解析XML.根据XML配置进行处理.返回结果. 代码架构图 一. 类介绍 1.SFWebPermission:实现IHttpModule接口,权限验证入口: 2.SFConfig:导入XML配置类: 3.SFPermission:解析XML配置进行权限验证: 4.SFAccessOper:数据库操作类: 5.SFPermissionSQL:XML节点实体类: 6.SFParameter:XML节点实体类: 7.SFCommon:系统变量定义类

  • ASP.NET MVC5添加验证(4)

    有时候我们网站需要添加验证,这一节我们演示下怎样使用ASP.NET MVC5添加验证. 1.在Model类里面添加验证,代码如下: public class Movie { public int ID { get; set; } [StringLength(60,MinimumLength=3,ErrorMessage="主题的长度必须在3到60个字符")] public string Title { get; set; } [Display(Name="Release Da

  • asp.net中的窗体身份验证(最简单篇)

    在创建网站中,常常会使用到身份验证.asp.net中内置了几种身份验证的方式,如Windows.Froms.Passport等.这几种身份验证的方式各有不同.一般来说,网站的身份验证方式都会经过以下几个步骤: 1.输入用户名和密码,单击确定按钮. 2.在后台判断用户名和密码是否正确,如果错误返回提示:如果正确,进入可访问的页面. 在ASP时代,通常都会在验证用户名和密码是否匹配之后,创建一个Session,然后在每个需要验证的页面中判断Session是否存在,如果存在,则显示页面内容:如果不存在

  • ASP.NET MVC4入门教程(六):验证编辑方法和编辑视图

    在本节中,您将开始修改为电影控制器所新加的操作方法和视图.然后,您将添加一个自定义的搜索页. 在浏览器地址栏里追加/Movies, 浏览到Movies页面.并进入编辑(Edit)页面. Edit(编辑)链接是由Views\Movies\Index.cshtml视图中的Html.ActionLink方法所生成的: @Html.ActionLink("Edit", "Edit", new { id=item.ID }) Html对象是一个Helper, 以属性的形式,

  • 验证一个ASP.NET应用程序和页面的生命周期的实现代码

    如果我们能更好地掌握这样一个过程,那么对单个ASP.NET Page的生命周期也能更好地了解: 下面介绍如何编写一个简单的ASP.NET 页面和一个简单的HttpModule,对MSDN里提到的ASP.NET的生命周期进行验证 1. 首先使用Visual Studio 2010建立一个空的ASP.NET网站 (ASP.NET 4.0) 2. 添加一个Default.aspx,添加三个ASP.NET控件,分别为TextBox,Button和Validator: 复制代码 代码如下: <form i

  • 详解ASP.NET MVC Form表单验证

    一.前言 关于表单验证,已经有不少的文章,相信Web开发人员也都基本写过,最近在一个个人项目中刚好用到,在这里与大家分享一下.本来想从用户注册开始写起,但发现东西比较多,涉及到界面.前端验证.前端加密.后台解密.用户密码Hash.权限验证等等,文章写起来可能会很长,所以这里主要介绍的是登录验证和权限控制部分,有兴趣的朋友欢迎一起交流. 一般验证方式有Windows验证和表单验证,web项目用得更多的是表单验证.原理很简单,简单地说就是利用浏览器的cookie,将验证令牌存储在客户端浏览器上,co

  • ASP.NET Internet安全Forms身份验证方法

    本文分别以ASP.NET1.1与ASP.NET2.0在Forms 身份验证上的实现方法,以及ASP.NET2.0较上一版本有哪些改进或变化进行说明.相信读者都己经看过许多类似这样的文章,不伦是在网上或是某些专业书籍上,最近又有模式&实践小组成员发布WCF安全模型指南,可见构建网站安全总是不过时的话题,作者认为此文也绝对是您应该收藏的参考资料. ASP.NET 安全性的工作原理 网站在安全性方面有一个常见的要求:特定的页面仅允许某些成员或其他经过身份验证的用户浏览.充分利用Forms身份验证是最好

  • ASP.NET窗体身份验证详解

    asp.net的身份验证类型如下: 在我们实际的工作中,froms身份验证用的还是比较多的,我们接下来详细说一下: 做为web开发的程序员,我想登录窗体是接触的太多了.可是,我发现有的程序员在对身份验证的时候是把验证的用户名保存在一个session里的,然后进入系统的每个页面都去验证session是否为空,如果不为空那么就response.redirect("......aspx").  我认为这种方法相对于asp.net提供的form身份验证来说是不足的,首先,就是增加代码量,因为我

  • ASP.net 验证码实现代码(C#)

    public class ValidateCode : System.Web.UI.Page {   private void Page_Load(object sender, System.EventArgs e)   {    this.CreateCheckCodeImage(GenerateCheckCode());   }   #region Web 窗体设计器生成的代码   override protected void OnInit(EventArgs e)   {    //  

  • Asp.net页面中调用soapheader进行验证的操作步骤

    本文为大家分享了Asp.net页面中调用以SOAP头作验证的web services操作步骤,供大家参考,具体内容如下 第一步:用来作SOAP验证的类必须从SoapHeader类派生,类中Public的属性将出现在自动产生XML节点中,即: <soap:Header> <UserSoapHeader xmlns="http://tempuri.org/"> <UserName>string</UserName> <Pwd>st

  • asp.net页面中如何获取Excel表的内容

    asp.net页面中如何获取Excel表的内容,具体内容介绍如下所示: 首先引用组件和命名空间 using Microsoft.Office.Interop.Excel; using System.Data.OleDb; 然后把excel上传到指定路径 上传文件方法省略 最后把上传的excel变成Dataset  (复制下面的方法就可以用了) public DataSet seachExcel(string str) //参数为excel的路径 { OleDbDataAdapter da = n

  • QT连接Oracle数据库并实现登录验证的操作步骤

    目的: 本文实现QT登录界面,输入账号和密码后,系统连接Oracle数据进行判断账号和密码(MD5加密)是否和数据库一致,如果一致则提示登录成功. 开发环境:Windows10+QT5.14.2+Oracle11G R2 操作步骤: 1.打开QT软件,创建一个新的Application项目 2.设计界面并修改代码: 2.1修改项目配置文件,添加sql字符串表示要对数据库进行操作. 2.2登录界面LoginForm设计 2.3编写登录界面代码 LoginForm.h代码如下: #ifndef LO

  • 在cmd中运行.py文件: python的操作步骤

    1 打开cmd, 不改变运行的目录: 输入python 空格  调试好的python文件路径 或者python 空格  将python文件拖入cmd中 2 打开cmd 输入要改变的路径盘 比如:E: (回车键) 输入路径languang\sublime\pythonTest.py 回车运行 以上这篇在cmd中运行.py文件: python的操作步骤就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持我们. 您可能感兴趣的文章: 在CMD命令行中运行python脚本的方法

  • Asp.NET页面中事件加载的先后顺序详解

    本文主要给大家介绍了关于Asp.NET页面事件加载先后顺序的相关内容,分享出来供大家参考学习,下面话不多说,来一起看看详细的介绍: ASP.NET 母版页和内容页中的事件 我们知道母版页和内容页都可以包含控件的事件处理程序.对于控件而言内容页中的控件在内容页中引发事件,母版页中的控件在母版页中引发事件.控件事件不会从内容页发送到母版页,也不能在内容页中处理来自母版页控件的事件,它们只会在自己事件内部进行处理. 下面是母版页(Master)与内容页(ContentPage)合并后事件的发生顺序:

  • 在ASP.NET 2.0中操作数据之十八:在ASP.NET页面中处理BLL/DAL层的异常

    导言 在一个使用了分层体系架构的ASP.NET web应用系统里处理数据,一般遵循以下几步: 1.确定业务逻辑层需要调用哪个方法,并且需要出入哪些参数.这些参数可以通过硬编码设置,程序自动设定,或者由用户输入. 2.调用此方法. 3.处理结果.当调用一个返回数据的BLL方法时,这包括绑定数据到Data Web服务器控件.而对于修改数据的BLL方法而言,这包括基于返回值的基础上执行某些动作,或者适当地处理在第二步中引发的异常. 正如我们在前一节里看到的,无论ObjectDataSource控件还是

  • asp.net页面中时间格式化的示例

    asp.net页面将Eval中的时间显示为"yyyy-MM-dd"格式 复制代码 代码如下: <table>  <tr>    <td style="width:273px;color:#105db5;" valign="top">[**平台]  <a href="javascript:void(0)" style="color:#6c6c72" title='&l

  • ASP.NET Core中快速构建PDF文档的步骤分享第1/2页

    比如我们需要ASP.NET Core 中需要通过PDF来进行某些简单的报表开发,随着这并不难,但还是会手忙脚乱的去搜索一些资料,那么恭喜您,这篇帖子会帮助到您,我们就不会再去浪费一些宝贵的时间. 在本文中我们将要使用DinkToPDF来处理我们在.NET Core Web 程序中进行构建PDF文档!就现在我们不多说,直接开始有趣的部分. 前言# 您可以通过创建PDF文档在我的仓库中,获取源代码,欢迎给个免费的Star... 现在我们创建一个.NET Core 3.0 项目,至于是mvc.Api.

  • ASP.NET Core中实现全局异常拦截的完整步骤

    前言 异常是一种运行时错误,当异常没有得到适当的处理,很可能会导致你的程序意外终止,这篇就来讨论一下如何在 ASP.Net Core MVC 中实现全局异常处理,我会用一些 样例代码 和 截图 来说明这些概念. 全局异常处理 其实在 ASP.Net Core MVC 框架中已经有了全局异常处理的机制,你可以在一个中心化的地方使用 全局异常处理中间件 来进行异常拦截,如果不用这种中心化方式的话,你就只能在 Controller 或者 Action 作用域上单独处理,这会导致异常处理代码零散在项目各

  • ASP.NET Core中预压缩静态文件的方法步骤

    前言 Web应用程序的优化是非常重要,因为使用更少的CPU,占用更少的带宽可以减少项目的费用. 在ASP.NET Core中我们可以很容易的启用响应压缩,但是针对预压缩文件,就需要做一些额外的功能了. 这篇博客文章展示了如何在ASP.NET Core中预压缩静态文件. 下面话不多说了,来一起看看详细的介绍吧 为什么需要预压缩文件? 虽然在从服务器请求文件时, 我们可以动态压缩文件,但这意味这Web服务器需要做更多的额外工作. 其实只有在新的应用程序部署时才会更改要压缩的文件. 越好的压缩效果需要

随机推荐