0

我正在使用以下代码 (asp.net) 为用户显示 pdf:

Response.ContentType = "Application/pdf";
Response.AddHeader("Content-Disposition", "attachment; filename=thePdf.pdf");

//data contains a pdf created with iTextSharp
Response.OutputStream.Write(data, 0, datalength);
Response.End();

有时用户会出错。我无法重现该问题,但这是我在日志中看到的,似乎它总是 Mozilla 4 或 5 有问题:

Error Message: The remote server returned an error: (414) Request-URI Too Large.
Error Source: System
Error Target Site: System.Net.WebResponse GetResponse()


Exception Stack Trace:
----------------------
at System.Web.UI.Page.HandleError(Exception e)
at System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint)
at System.Web.UI.Page.ProcessRequest(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint)
at System.Web.UI.Page.ProcessRequest()
at System.Web.UI.Page.ProcessRequestWithNoAssert(HttpContext context)
at System.Web.UI.Page.ProcessRequest(HttpContext context)
at ASP.my_doexport_aspx.ProcessRequest(HttpContext context)
at System.Web.HttpApplication.CallHandlerExecutionStep.System.Web.HttpApplication.IExecutionStep.Execute()
at System.Web.HttpApplication.ExecuteStep(IExecutionStep step, Boolean& completedSynchronously)

Server Variables:
-----------------
ALL_HTTP: HTTP_CACHE_CONTROL:no-cache
HTTP_CONNECTION:Keep-Alive
HTTP_ACCEPT:image/gif, image/jpeg, image/pjpeg, image/pjpeg, application/x-shockwave-flash, application/vnd.ms-excel, application/vnd.ms-powerpoint, application/msword, */*
HTTP_ACCEPT_ENCODING:gzip, deflate
HTTP_ACCEPT_LANGUAGE:de
HTTP_COOKIE:ASP.NET_SessionId=xxxxxxxxxxxxa0jo0pxxxxxx; .ASPXFORMSDDDO=XXX436F9868122C336C1E358DBFB1E908F3767FABAEF5338CF62C785ADD6AEA23F8663B413A7C0634DC40F8DCD3B10889CB0FB4CEE18617FB8B1E87C9655AE69C274A1AD0A5F47D95BF8D502F459D05D09A2B0E3691C6737B679F72C6B0XXXXX; __utma=213584726.23687335.1259423588.1259423588.1259423588.1; __utmb=213584726.10.10.1259423588; __utmc=213584726; __utmz=213584726.1259423588.1.1.utmcsr=(direct)|utmccn=(direct)|utmcmd=(none)
HTTP_HOST:www.domain.com
HTTP_REFERER:http://www.domain.com/export.aspx
HTTP_USER_AGENT:Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 5.1; Trident/4.0; GTB6.3; .NET CLR 1.1.4322)

我还没有找到解决问题的方法,您对如何解决有任何想法吗?

4

2 回答 2

1

错误消息是明确的Request-URI。问题似乎与您的回答没有任何关系;用于生成错误的 url 是什么?

于 2009-12-02T13:35:27.977 回答
1

HTTP错误分类如下

1xx - Informational
2xx - Successful 
3xx - Redirection
4xx - Client error
5xx - Server error

您的 414 错误必须是客户端生成的错误,与您的服务器代码无关。您的浏览器发送的 URL 太大而无法由您的 Web 服务器正确处理。

那么,网址的最大长度是多少?

这个链接也很有帮助:HTTP 414 Request-URI Too Large and Firefox

于 2009-12-02T13:37:04.277 回答