提问人:Bojjaiah 提问时间:4/13/2023 更新时间:4/13/2023 访问量:37
发布后从 Web 服务方法获取错误“已达到最大响应大小”
Getting error from web service method after publish "Maximum response size reached"
问:
已发布的 Web 方法,它将返回文件名以及文件内容,这是文件的 Base64 文本,它工作正常。但是当我们请求超过 120MB 的文件时出现错误错误:达到最大响应大小。GetDocument
实际:
为此,我在 c# 中尝试了以下代码。
[WebMethod]
public DocumentResponse GetDocument(string AuthTokenKey, string FileNameWithPath)
{
using (File_Information fs = new File_Information())
return fs.GetDocumentResponse(AuthTokenKey, FileNameWithPath);
}
private class File_Information
{
DocumentResponse ObjDocumentResponse;
public DocumentResponse GetDocumentResponse(string AuthTokenKey, string FileNameWithPath)
{
if (ObjDocumentResponse == null)
ObjDocumentResponse = new DocumentResponse();
FileInfo fileInfo = new FileInfo(FileNameWithPath);
ObjDocumentImportFile.Add(new DocumentImportFile
{
FileName = StrFileName,
FileContent = GetFileContent(fileInfo.FullName)
});
ObjDocumentResponse.DocumentImportFile = ObjDocumentImportFile;
return ObjDocumentResponse;
}
private string GetFileContent(string name)
{
byte[] inputBytes = File.ReadAllBytes(name);
return Convert.ToBase64String(inputBytes);
}
}
在收到达到最大响应大小的错误后,我修改了文件以接受/允许最大响应大小。web.config
<configuration>
<system.web>
<httpRuntime targetFramework="4.6.1" executionTimeout="3600" maxRequestLength="2048576000" requestLengthDiskThreshold="2048576000" />
</system.web>
</configuration>
仍然收到相同的错误。
期待:要求从该方法返回至少 500MB 的 Base64 文本的文件内容。
对此有什么帮助吗?
答:
0赞
Bojjaiah
4/13/2023
#1
我现在将设置变成 350MB。
<configuration>
<system.web>
<httpRuntime executionTimeout="3600" maxRequestLength="350000" />
</system.web>
</configuration>
需要检查超过 350MB 的文件,超时时间不断增加。
评论