Asp.net IIS 7 URLreferer引发异常
当我得到参考url时,IIS 7抛出一个异常。我的代码如下:Asp.net IIS 7 URLreferer引发异常,asp.net,iis-7,Asp.net,Iis 7,当我得到参考url时,IIS 7抛出一个异常。我的代码如下: var referrer = Request.UrlReferrer == null ? null : Request.UrlReferrer.AbsoluteUri; 应用程序抛出ArgumentException,并显示错误消息 “值不在预期范围内。” IIS 6中没有问题 当使用“Response.Redirect”导航页面时,会发生此异常 应用程序主页面有响应。根据当前用户的角色重定向方法。用户主页抛出此异常 如何在IIS
var referrer = Request.UrlReferrer == null ? null : Request.UrlReferrer.AbsoluteUri;
应用程序抛出ArgumentException,并显示错误消息
“值不在预期范围内。”
IIS 6中没有问题
当使用“Response.Redirect”导航页面时,会发生此异常
应用程序主页面有响应。根据当前用户的角色重定向方法。用户主页抛出此异常
如何在IIS 7中获取推荐人URL
谢谢,当我试图从请求处理中启动的System.Threading.Task访问请求对象时,遇到了类似的问题。 我使用任务来减少响应时间——在我的情况下,大多数处理可以在发送请求后执行。 也就是说,我有这样的想法:
public ActionResult SomeAction()
{
new System.Threading.Task(() => {
// here I used this.Request.UrlReferrer and got weird ArgumenException error
}).Start();
return someActionResultThatDoesntRequireProcessing;
}
我已将延迟处理中的URLreferer(以及我需要的其他this.Request.stuff)提取到一个单独的“closure”变量中(我选择它们具有非常基本的类型):
这对我很有用。因此,在重定向页面之前,我必须先获取引用者url。也许,因为在重定向以及切换到其他线程后,正确获取所有请求属性的某些上下文可能已丢失。@hanzala能否详细说明是什么解决了您的问题?这是LVR发布的确切代码吗?谢谢我将URLreferer作为参数发送到异步方法。我没有将请求对象作为参数。
public ActionResult SomeAction()
{
var urlReferrerAbs = this.Request.UrlReferrer.AbsoluteUri;
var clientAddress = this.Request.UserHostAddress;
// save other stuff from the request object
new System.Threading.Task(() => {
// here I used urlReferrerAbs instead of this.Request.UrlReferrer and the error has gone!
}).Start();
return someActionResultThatDoesntRequireProcessing;
}