用soapExtension验证webservice用户, 浏览器为何能跳过验证?

本文探讨了在使用SOAPExtensionAttribute进行Web Service接口认证时遇到的问题。当通过Ajax调用能正常执行验证逻辑,但浏览器直接访问时会跳过验证。主要代码展示了SOAPHeader和SoapExtensionAttribute两种方法的实现,并寻求解决方案。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

最近在做webService接口认证的东东。网上搜了一把,推荐使用SOAPHeader 或 SoapExtensionAttribute来验证合法用户。

1. SOAPHeader 

        只用soapheader的话没问题,ajax访问,浏览器直接调用都能正常走进验证方法里。

因为验证方法是写在web method里面的,感觉和业务逻辑混合了,不太科学,没有SoapExtensionAttribute 写在ProcessMessage里好。


2.SoapExtensionAttribute 

        这种方式认证逻辑分离出来,写在ProcessMessage方法里,感觉比较科学。Ajax调用能正常走进验证逻辑里,但是直接用浏览器调用WebService的话,就跳过验证了,直接去调我们的web method了。是哪儿配置不正确导致的吗?请大神赐教。

--------------------------------------------------------------------------

主要代码:

1.SOAPHeader 

        private LoginHeader _loginHeader = new LoginHeader();

        [WebMethod(EnableSession = true)]
        [SoapHeader("MyLoginHeader")]
        public string HelloA()
        {
  &nb

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值