a_jack_ 2020-11-04 13:07 采纳率: 0%
浏览 62

webservice调用返回的数据过长,如何设置maxJsonLength的属性。

我使用Soap Client 调用接口的时候,一个接口返回的结果过长,引起了错误,调用代码如下
图片说明

报错信息如下
图片说明

网上找到的解决方案都是.net配置server.config的解决方案和java的不匹配。

  • 写回答

1条回答 默认 最新

  • 小小鱼儿小小林 全栈领域优质创作者 2023-05-30 11:43
    关注

    如果你使用的是ASP.NET WebService,可以在web.config文件中添加以下配置:

    <system.web.extensions>
        <scripting>
            <webServices>
                <jsonSerialization maxJsonLength="5000000"/>
            </webServices>
        </scripting>
    </system.web.extensions>
    

    其中maxJsonLength属性的值可以根据需要进行调整。

    如果你使用的是WCF服务,可以在服务配置文件中添加以下配置:

    <system.web.extensions>
        <scripting>
            <webServices>
                <jsonSerialization maxJsonLength="5000000"/>
            </webServices>
        </scripting>
    </system.web.extensions>
    

    如果你使用的是Soap Client调用接口,可以在调用方法前添加以下代码:

    System.ServiceModel.Channels.Binding binding = client.Endpoint.Binding;
    System.Xml.XmlDictionaryReaderQuotas quotas = new System.Xml.XmlDictionaryReaderQuotas();
    quotas.MaxArrayLength = int.MaxValue;
    quotas.MaxStringContentLength = int.MaxValue;
    binding.GetType().GetProperty("ReaderQuotas").SetValue(binding, quotas, null);
    

    其中MaxArrayLength和MaxStringContentLength属性的值可以根据需要进行调整。

    评论

报告相同问题?

悬赏问题

  • ¥30 这是哪个作者做的宝宝起名网站
  • ¥60 版本过低apk如何修改可以兼容新的安卓系统
  • ¥25 由IPR导致的DRIVER_POWER_STATE_FAILURE蓝屏
  • ¥50 有数据,怎么建立模型求影响全要素生产率的因素
  • ¥50 有数据,怎么用matlab求全要素生产率
  • ¥15 TI的insta-spin例程
  • ¥15 完成下列问题完成下列问题
  • ¥15 C#算法问题, 不知道怎么处理这个数据的转换
  • ¥15 YoloV5 第三方库的版本对照问题
  • ¥15 请完成下列相关问题!