我的应用程序在Asp.Net MVC3
中,编码为C#
,我在Visual Studio 2008
中有一个SSRS解决方案,我正在通过我的ASP.NET MVC3应用程序调用SSRS报告。我的应用程序几天前运行良好,但突然出现如下错误:
我的错误:
The request failed with HTTP status 401: Unauthorized.
我的尝试
1.我的SSRS报告部署在我的local server
上。我在SSRS报告解决方案的数据源中正确设置了凭据。
1.我试图在我的web.config <identity impersonate="true" userName="Domain\username" password="Password" />
中添加标记
1.我尝试添加IReportServerCredentials reportCredentials = new ReportServerCredentials("MyUserName", "MyPassword", "ServerName");
1.我以'Run as Administrator'
的形式运行Visual Studio。
1.我尝试了此链接中提到的解决方案Creating a key using RegEdit
1.更新我也尝试了以下解决方案,但结果相同:Unauthorized error in SSRS
上面的解决方案都不起作用,但是当我在其他机器上运行同样的解决方案时,这些解决方案运行得很好,没有显示错误。只有当我从我的机器上运行解决方案时,我才得到错误The request failed with HTTP status 401: Unauthorized.
8条答案
按热度按时间iih3973s1#
我也得到了同样的错误,
让我分享一下我尝试过的,现在它工作得很好。
在
page_load
事件内部,"这对我很管用"
xeufq47z2#
我遇到了同样的问题。一切都很好,然后突然我在reportviewer iframe中收到了一个401,而不是我在调试模式(localhost)下的报告。我一直在摆弄设置,让它在现场运行,所以我认为我做错了什么。
尝试了几件事,然后决定只是重新启动,你猜怎么着???我的域密码已经过期,所以身份验证失败!!!愚蠢愚蠢愚蠢的我!
我想我应该在这里添加我的解决方案,以防人们遇到同样愚蠢的情况,浪费宝贵的时间去找出他们做错了什么...
3b6akqbq3#
试试这个
gblwokeq4#
我的ReportPath出现了问题。我使用的是浏览器中呈现的URL,但应该使用ReportServer数据库中的URL。若要获取路径,请查询Catalog表并使用路径字段中的值。
pw9qyyiw5#
请求失败,http状态为401未授权。ssrs 2008
从web.config添加键=“RS_UName”值=“rajiv-pc”----不正确
用您的系统名称(rajiv)替换上面的值,而不是sql服务器名称,如rajiv-pc
始终存在系统名称而不是sql服务器名称。
从web.config添加键=“RS_UName”值=“rajiv”---正确
njthzxwz6#
好奇的家伙的回答解决了我的问题。谢谢伙计!
此外,请检查web. config。它必须具有以下内容:
`
`
公共令牌必须相同,否则将引发另一个错误。
iqxoj9l97#
请检查您指向的Web服务URL。我在两个独立的服务器上部署了SSRS,其中一个服务器工作正常,而另一个服务器则抛出了此错误“请求失败,http状态401未经授权”。
因此,几个小时后,我发现我没有指向web. config上的Web服务URL。示例在web. config上更改报表服务URL:http://weburl/ReportServer。
这很有效!!!
a11xaf1n8#
我们最近搬到了一个新的服务器上。我们用来访问winform应用程序中的报告的SSRS ID已经过期,需要更改密码。
这就解决了问题。
我们还使密码不过期....:-(