【问题标题】:Error (414) Request-URI Too Long when calling a wcf web service调用 wcf Web 服务时出现错误 (414) Request-URI Too Long
【发布时间】:2016-01-03 22:55:00
【问题描述】:

我正在为我们的一位客户开发 wcf Web 服务,他们报告了一个我完全不理解的错误。 首先,wcf 做了什么:它只是将对象保存在他们无权访问的数据库中。就这样。 我已经测试了 wcf 最多可以保存 100/150 个对象。 但是,当他们调用 Web 服务时,他们甚至无法保存 50,因为它会引发异常“远程服务器返回错误:(414) Request-URI Too Long”。 我知道每个浏览器对 url 的大小都有限制,但我真的不明白为什么,在调用 web 服务时,他们会遇到这个问题。

也许这会有所帮助,但我认为他们从 web api 调用 web 服务,而不是直接从他们的网页/应用程序调用 web 服务。

如果有人有可以帮助我的想法,我将非常感激。

【问题讨论】:

    标签: c# web-services wcf


    【解决方案1】:

    这与他们的客户本身无关。 414 错误来自您的服务器,因为他们传递的 Request-URI 太长。这通常是由客户端执行 HTTP GET 而不是 POST 引起的。因此,当在其中传递太多参数时,查询字符串会变得太大。检查他们是否正在使用 POST,因为该服务显然需要使用该动词公开。

    【讨论】:

    • 所以我必须问他们是否在两个请求中都使用了 HTTP POST(从应用程序到 web api 以及从 web api 到 web 服务)?
    • 您只需要确保对您的服务的请求使用的是 POST,因为这是错误的来源。虽然您应该能够从您的 Web 服务器日志中确定这一点 - 您是否使用 IIS?
    • 是的,但是他们正在他们的服务器中测试 Web 服务,这就是为什么我真的不知道服务器日志说什么。
    猜你喜欢
    • 1970-01-01
    • 2020-07-18
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-01-25
    • 1970-01-01
    • 1970-01-01
    • 2012-11-23
    相关资源
    最近更新 更多