我正在使用带C#的MVC4开发一个Web应用程序.
我需要通过AJAX发送PDF,所以我将它们转换为base64并将它们发送到C#中的函数.该函数将调用Web服务上的另一个函数.
问题是,Web服务函数没有得到base64字符串,因为它非常大,但不是TOO大,它大约111,000个字符,如70kb.我收到错误413
pdfCony是我的base64字符串
我已经在web服务的web.config中设置了maxRecievedMesage:
<bindings> <basicHttpBinding> <binding name="basicHttpsBinding" maxReceivedMessageSize="524288000" /> <binding name="mexHttpBinding" maxReceivedMessageSize="524288000" /> </basicHttpBinding> </bindings> <services> <service behaviorConfiguration="ServicioCCMasAvalBehavior" name="ServicioCCMasAval.ServicioCCMasAval"> <endpoint address="/" binding="basicHttpBinding" contract="ServicioCCMasAval.IServicioCCMasAval" /> <endpoint address="mex" binding="mexHttpBinding" contract="IMetadataExchange" /> </service> </services>
所以我不知道是什么问题.请帮忙.
解决方法
非常感谢.但我发现解决方案在另一个web.config示例中查找
这是我的web.config:
<bindings> <basicHttpBinding> <binding name="basicHttpsBinding" maxReceivedMessageSize="524288000" /> <binding name="mexHttpBinding" maxReceivedMessageSize="524288000" /> </basicHttpBinding> </bindings> <services> <service behaviorConfiguration="ServicioCCMasAvalBehavior" name="ServicioCCMasAval.ServicioCCMasAval"> <endpoint address="/" binding="basicHttpBinding" contract="ServicioCCMasAval.IServicioCCMasAval" /> <endpoint address="mex" binding="mexHttpBinding" contract="IMetadataExchange" /> </service> </services>
我错过了enpoint上的bindingConfiguration.现在这是我的工作webconfig:
<bindings> <basicHttpBinding> <binding name="basicHttpBinding" maxReceivedMessageSize="524288000" /> <binding name="mexHttpBinding" maxReceivedMessageSize="524288000" /> </basicHttpBinding> </bindings> <services> <service behaviorConfiguration="ServicioCCMasAvalBehavior" name="ServicioCCMasAval.ServicioCCMasAval"> <endpoint address="/" binding="basicHttpBinding" bindingConfiguration="basicHttpBinding" contract="ServicioCCMasAval.IServicioCCMasAval" /> </service> </services>
真的非常感谢.