ASP.NET调用WebService用户验证示例(身份验证后才可以调用WebService)
本示例基于ASP.NET开发,主要用户是外部程序调用WebService的时候要身份验证成功后才可以获取WebService的数据。
直接上代码吧,如下:
首先,在项目的右键新建一个Web 服务文件(test.asmx)。
主要使用到的命名:
using System.Web.Services;
using System.Web.Services.Protocols;
namespace xueit.Web
{
#region 登录头配置
public class MySoapHeader : SoapHeader
{
private string strUserName = string.Empty;
private string strPassWord = string.Empty;
public MySoapHeader()
{
}
public MySoapHeader(string username, string password)
{
this.strUserName = username;
this.strPassWord = password;
}
#region 用户名与密码
public string UserName
{
get { return strUserName; }
set { strUserName = value; }
}
public string PassWord
{
get { return strPassWord; }
set { strPassWord = value; }
}
#endregion
#region 检测是否正确登录
public bool CheckLogin()
{
if (strUserName == "admin" && strPassWord == "123456")
{
return true;
}
else
{
return false;
}
}
#endregion
}
#endregion
/// <summary>
/// SkillWebService 的摘要说明
/// </summary>
[WebService(Namespace = "http://tempuri.org/")]
[WebServiceBinding(ConformsTo = WsiProfiles.BasicProfile1_1)]
[ToolboxItem(false)]
// 若要允许使用 ASP.NET AJAX 从脚本中调用此 Web 服务,请取消对下行的注释。
// [System.Web.Script.Services.ScriptService]
public class testWebService : System.Web.Services.WebService
{
[System.Web.Services.Protocols.SoapHeader("myHeader")]
[WebMethod(Description = "获取当前数据(DataSet)", EnableSession = true)]
public DataSet GetIndexSkillData(string msid)
{
if (myHeader.CheckLogin())
{
skillDAL dal = new skillDAL();
return dal.GetIndexSkillData(msid);
}
else
{
throw new SoapException("未登录系统或登录超时,请重新登录 !", new System.Xml.XmlQualifiedName("lanyou", "http://Lanyou/"));
}
}
[System.Web.Services.Protocols.SoapHeader("myHeader")]
[WebMethod(Description = "更新点击率(bool)", EnableSession = true)]
public bool UpdateSkill(string msid)
{
if (myHeader.CheckLogin())
{
skillDAL dal = new skillDAL();
return dal.UpdateSkill(msid);
}
else
{
throw new SoapException("未登录系统或登录超时,请重新登录 !", new System.Xml.XmlQualifiedName("lanyou", "http://Lanyou/"));
}
}
}
}
好,到这里实现了获取当前记录及更新点击的时候要身份登录。
下面示例如何调用这个WebService
本文版权归学IT网(www.xueit.com)所有,任何单位与个人转载必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。