[学习日记]对SOAP头内添加信息的验证,可实现对请求WEB服务进行身份验证。

首先,当然是发送的SOAP头里添加信息的方法了,前面有过记录,这里就不再写了
可参见
[学习日记]对SOAP请求的头添加内容的方法
 
那么这次向头内添加的信息为:

dim proxy as GetHttpHeadersProxy=new GetHttpHeadersProxy
proxy.AddHttpHeader("name","aowind")
proxy.AddHttpHeader("pwd","123456")

接下来就是WEB服务方面的验证方法了。

<%@ WebService Language="vb"  Class =Class="believing.Believing" %>

Imports System
Imports System.Web.Services
Imports System.IO
Imports System.Collections


Public Structure httpheaderStructure httpheader
    Public name As String
    Public value As String
End Structure

<System.Web.Services.WebService(Namespace :Namespace:="http://hx66.com", Description:="身份验证服务")> _
Public Class BelievingClass Believing
    Inherits System.Web.Services.WebService

        <WebMethod(Description:="<font color=green>身份验证方法</font>")> _
    Public Function lianzheng()Function lianzheng() As String
dim name,pwd as string
name=Context.Request.Headers("name") 
pwd=Context.Request.Headers("pwd") 
        If  (用户表中存在name) And (用户表中存在pwd)  Then
           Try
.            
            Catch ex As Exception
                Return ex.ToString
            End Try
            Return "OK!" 
        Else
            Return "用户名或都密码有误,请求不于处理"
        End If
     End Function

可以看到
name=Context.Request.Headers("name") 
pwd=Context.Request.Headers("pwd") 
这两句就是从SOAP头中取出数据
也可以用索引方式来取得
Context.Request.Headers(0).value
 

时间: 2024-09-23 18:55:39

[学习日记]对SOAP头内添加信息的验证,可实现对请求WEB服务进行身份验证。的相关文章

[学习日记]对SOAP请求的头添加内容的方法

方法主要是利用类的继承继承WEB服务的代理类,然后添加新的方法,实现对SOAP请求信封的头内添加信息. 以下是生成的继类的代码,继承类的名为GetHttpHeadersProxy.vb Imports System.NetImports System.Collections.SpecializedPublic Class GetHttpHeadersProxyClass GetHttpHeadersProxy    Inherits getheaders.header    Private he

从 SOAP Toolkit 迁移到 Web 服务

web 摘要:如何从 Visual Basic 6.0 和 Visual Basic .NET 访问 Web 服务,以及如何将现有的 SOAP 应用程序转换到 .NET 平台. 目标了解 Microsoft Visual Studio .NET 中的 SOAP 工具 回顾使用 SOAP 和 Visual Basic 6.0 访问 COM/COM+ 组件 从 Visual Basic .NET 访问 Web 服务 将 SOAP Toolkit 应用程序迁移到 Web 服务 前提条件了解什么是 We

[原创]IssueVision 学习笔记(一)-----使用SoapHeader传递Web Serivices自定义的身份验证数据

web|笔记|数据|原创 在调用Web Serivices时,往往需要身份验证,使得通过验证的用户才能调用你Web Serivices中的方法.当然你可以通过将参数添加到每个需要自定义身份验证方案的Web services方法中去,这需要花费很大的精力.IssueVision 中使用了非常常用而且有效便捷的方法-----使用SoapHeader来实现自定义身份验证数据的传递. SoapHeader提供了一种方法,用于将数据传递到Web services方法或从Web services方法传递数据

C# Web Service非Soap头(Session)身份验证方法

最近在做一个程序的Web Service,需要验证帐号才能使用Web Service提供的方法,首先想到把帐号信息附加在Soap头中传过去的方式,但在公司其他同事在使用非.net程序调用的时候发现有诸多不便.又Google了一镇子,发现一个使用Session的方式,说起来还是找"Web Service分段上传大附件"的时候看到的一个示例,难怪以前找Web Service验证的时候老找不到想要的结果.代码比较简单,主要代码如下: /// <summary> /// 授权验证,

webservice进行soap通信时,soap头的处理问题

问题描述 合作公司提供了一个接口,向我们发送xml格式的信息,我们响应后处理信息也返回xml格式的信息给对方,对方提供了一个他们调用webservice的例子,我们现在就是要写个webservice接收信息,处理后返回相关的信息和下处理结果,问题来了,我现在用VS2005写的webservice,信息头的格式是<soap,合作公司给的信息格式是要求<soap-ENV,现在查了好多都不知道怎么转换,看你在一个贴子里说是定义命名空间,请问具体怎么做?麻烦你指点一下了 解决方案 解决方案二:学习解决

WebService开发(一) 如何使用Soap头

平时写Web Service时经常会对Service的访问进行安全控制,方法很多,这里介绍一下如何用Soap头来进行控制的一例. 第一步,引用需要用到的名称空间 using System; using System.Xml; using System.Xml.Serialization; using System.Web.Services; using System.Web.Services.Protocols; 第二步,建立自定义的SoapHeader类MySoapHeader public

DOMINO 8.5调用WEBSERVICE SOAP 头的问题

问题描述 我用DOMINO8.5编辑器也是8.5的,调用WEBSERVICE,其中WEBSERVICE有SOAP头验证信息.我在网上查看了可以直接lotus.domino.websvc.client.Call_call=createCall("getOUlist");但是我在createCall的时候老是出错,并且在WEBSERVICE使用者里面已经建立好XXXStub.JAVA文件.文件内容如下:packagecom.WebAD;publicclassSyncADSoapStubex

ASP.NET MVC 5 学习教程:数据迁移之添加字段

原文 ASP.NET MVC 5 学习教程:数据迁移之添加字段 起飞网 ASP.NET MVC 5 学习教程目录: 添加控制器 添加视图 修改视图和布局页 控制器传递数据给视图 添加模型 创建连接字符串 通过控制器访问模型的数据 生成的代码详解 使用 SQL Server LocalDB Edit方法和Edit视图详解 添加查询 Entity Framework 数据迁移之添加字段 添加验证 Details 和 Delete 方法详解 在本节中,我们将使用Entity Framework Cod

百度地图api 给多个点添加信息窗口 页面无显示

问题描述 百度地图api 给多个点添加信息窗口 页面无显示 <html xmlns="http://www.w3.org/1999/xhtml"> <head runat="server"> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <meta name="viewport&qu