社区
C#
帖子详情
关于web service的用户验证的问题。
binapex
2006-09-06 10:56:28
System.Web.Services.Protocols.SoapException: 服务器无法处理请求。 ---> System.NullReferenceException: 未将对象引用设置到对象的实例。
这是错误信息
代码详见:http://community.csdn.net/Expert/topic/5001/5001706.xml?temp=.615307
...全文
177
11
打赏
收藏
关于web service的用户验证的问题。
System.Web.Services.Protocols.SoapException: 服务器无法处理请求。 ---> System.NullReferenceException: 未将对象引用设置到对象的实例。 这是错误信息 代码详见:http://community.csdn.net/Expert/topic/5001/5001706.xml?temp=.615307
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
11 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
scow
2006-09-07
打赏
举报
回复
看看header是在哪实例化的,如果header在click事件之前保证实例化了,你这样写可以调,没问题
scow
2006-09-07
打赏
举报
回复
header在click事件之外定义的,回调之后就为null了
binapex
2006-09-06
打赏
举报
回复
我是进行了验证啊,可是怎么验证呢?我在每个应用方法里面都有像AplicationAMethod里面那样写的
scow
2006-09-06
打赏
举报
回复
这种验证方式是基于消息的,即每次调用webservice方法都要验证,而不是验证一次就行了
binapex
2006-09-06
打赏
举报
回复
怎么每人回答我?
代码如下:
public class Authentication : System.Web.Services.Protocols.SoapHeader
{
public string _Username;
public string _Password;
public string UserName
{
get{return _Username;}
set{_Username=value;}
}
public string Password
{
get{return _Password;}
set{_Password=value;}
}
public bool ValidUser(string in_Username,string in_Password)
{
……
}
}
在web service文件中是这样定义的;
public Authentication header;
[WebMethod(EnableSession = true)]
[System.Web.Services.Protocols.SoapHeader("header")]
public void AMethod()
{
if (header.ValidUser(header.UserName, header.Password))
{
……
}
}
[WebMethod(EnableSession = true)]
[System.Web.Services.Protocols.SoapHeader("header")]
public void BMethod()
{
if (header.ValidUser(header.UserName, header.Password))
{
……
}
}
我在调用这个web serivce时(在asp.net),
private local.servicename service1= new local.servicename();
private local.Authentication header = new local.Authentication();
我在AplicationAMethod里
header.UserName = "aa";
header.Password = "bb";
service1.AuthenticationValue = header;
service1.Amethod();
在这里可以正常运行。
但是在同一个页面里,当我进行下一步操作,也就是在另外一个方法里再次调用Bmethod时,就会提示验证错误,跟踪进去可以看到header为null。
binapex
2006-09-06
打赏
举报
回复
高手快来啊,急等
binapex
2006-09-06
打赏
举报
回复
to zhongwanli(㊣【为了老婆,二次重构____然后升★★】㊣) :
不太明白你的意思,能不能讲清楚一点?
是不是因为这里[WebMethod(EnableSession = true)]为true?
如果这里EnableSession = false呢?
zhongwanli
2006-09-06
打赏
举报
回复
EnableSession 了
也得用Session 将他保存吧。
binapex
2006-09-06
打赏
举报
回复
是这样的,我有两个按钮,我先执行其中一个:
private void method1()
{
service1.AuthenticationValue = header;
service1.Amethod();
}
然后我单击另外一个按钮,执行第二个方法:
private void method2()
{
service1.AuthenticationValue = header;
service1.Bmethod();
}
就这样,我单击第一个按钮执行的结果是正确的,不会产生错误。
而当我单击第二个按钮执行method2方法的时候,程序就会报SOAP的相关错误,也就是上面我提过的错误报告。
binapex
2006-09-06
打赏
举报
回复
不会每次都要重新定义吧?
scow
2006-09-06
打赏
举报
回复
//这样可以
service1.AuthenticationValue = header;
service1.Amethod();
service1.Bmethod();
//这样也行
service1.AuthenticationValue = header;
service1.Amethod();
service2.AuthenticationValue = header;
service2.Bmethod();
C#调用
Web
Service
时的身份
验证
C#调用
Web
Service
时的身份
验证
在项目开发,我们经常会使用
Web
Service
,但在使用
Web
Service
时我们经常会考虑以下
问题
:怎么防止别人访问我的
Web
Service
?从哪里引用我的
Web
Service
?对于第一个
问题
,就涉及到...
Web
Service
学习笔记
Web
Service
概述
Web
Service
的定义 W3C组织对其的定义如下,它是一个软件系统,为了支持跨网络的机器间相互操作交互而设计。
Web
Service
服务通常被定义为一组模块化的API,它们可以通过网络进行调用,来执行远程...
Web
Api 登录身份
验证
前言:
Web
用户
的身份
验证
,及页面操作权限
验证
是B/S系统的基础功能,一个功能复杂的业务应用系统,通过角色授权来控制
用户
访问,本文通过Form认证,Mvc的Controller基类及Action的权限
验证
来实现
Web
系统登录,Mvc...
两种方法实现
Web
Service
身份
验证
Web
Service
身份
验证
解决方案 一:通过通过SOAP Header身份
验证
。 1.我们实现一个用于身份
验证
的类,文件名MySoapHeader.cs MySoapHeader类继承自System.
Web
.
Service
s.Protocols.SoapHeader。且定义了两个...
RESTful
Web
Service
架构剖析
如今微服务和分布式架构变的越来越流行,而简单,可靠,高效,跨平台和跨语言...本文主要面向对
Web
Service
有一定理解,需要进一步了解基于 REST 形式的
Web
Service
的 IT 开发人员和架构师。它不是
Web
Service
入
C#
110,534
社区成员
642,575
社区内容
发帖
与我相关
我的任务
C#
.NET技术 C#
复制链接
扫一扫
分享
社区描述
.NET技术 C#
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
让您成为最强悍的C#开发者
试试用AI创作助手写篇文章吧
+ 用AI写文章