Soap ui 调用带有SoapHeader验证的WebService

C# 创建WebService

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.Services;
using System.Web.Services.Protocols;

namespace PSService
{
    /// <summary>
    /// GetInventory 的摘要说明
    /// </summary>
    [WebService(Namespace = "http://tempuri.org/")]
    [WebServiceBinding(ConformsTo = WsiProfiles.BasicProfile1_1)]
    [System.ComponentModel.ToolboxItem(false)]
    // 若要允许使用 ASP.NET AJAX 从脚本中调用此 Web 服务,请取消注释以下行。 
    // [System.Web.Script.Services.ScriptService]
    public class GetInventory : System.Web.Services.WebService
    {
        public CustomerSoapHeader header; ////定义用户身份验证类变量header
        [WebMethod]
        [System.Web.Services.Protocols.SoapHeader("header")] //用户身份验证的soap header
        public string HelloWorld()
        {

            //return "HelloWorld!!!";
            //验证是否有权访问
            if (header.ValideUser(header.UserName, header.Password))
            {
                return "123执行了";
            }
            else
            {
                return "您没有权限访问";
            }
        }
    }
}

public class CustomerSoapHeader : SoapHeader
{
    public CustomerSoapHeader() { }
    public string UserName { get; set; }
    public string Password { get; set; }

    public bool ValideUser(string in_UserName, string in_PassWord)
    {
        if (in_UserName == "icbase" && in_PassWord == "123456")
            return true;
        else
            return false;
    }
}

 

Soap ui 测试

 

 

posted @ 2025-06-04 16:14  海角之上  阅读(25)  评论(0)    收藏  举报