在未应用SSL证书的情况下,我们可以使用wcf服务将最大文件传输至2gb。 使用SSL证书后,它仅允许上传几个KB,并且由于大文件而失败,并出现不同的错误。 这适用于从c#控制台应用程序调用的小文件。
<binding name="BasicHttpBinding_IDocumentManagement" maxReceivedMessageSize="2147483647" sendTimeout="12:00:00" receiveTimeout="12:00:00" closeTimeout="12:00:00" openTimeout="12:00:00"
messageEncoding="Mtom" maxBufferSize="2147483647" maxBufferPoolSize="2147483647">
<security mode="Transport">
<transport clientCredentialType="Ntlm" />
</security>
</binding>
</basicHttpBinding>
</bindings>
<client>
<endpoint address="https://apps.stg.ppp.com/PIDService/DocumentManagement.svc"
binding="basicHttpBinding" bindingConfiguration="BasicHttpBinding_IDocumentManagement"
contract="PIDLocalService.IDocumentManagement" name="BasicHttpBinding_IDocumentManagement" />
</client>
客户代码
var service = new PIDLocalService.DocumentManagementClient();
var docDetails = new PIDLocalService.DocumentDetails();
ServicePointManager.ServerCertificateValidationCallback = delegate
{
return bool.Parse(ConfigurationManager.AppSettings["IgnoreSSLErrors"]);
};
var result = new PIDLocalService.ValidationResult();
try
{
service.PostDocument(
docDetails.Audience, ....);
}
错误:
“未能分配463607746字节的托管内存缓冲区。可用内存量可能不足。”
添加服务配置
<readerQuotas maxDepth="4500000" maxStringContentLength="4500000" maxBytesPerRead="40960000" maxNameTableCharCount="250000000" maxArrayLength="4500000"/>
并更改安全模式=“运输”>
“无法使用授权'apps.ppp.stg.com'为SSL / TLS建立安全通道。”
如何检查我的证书工作正常?还是仅仅是配置问题?