【问题标题】:Firebase Rest API status code 18Firebase Rest API 状态码 18
【发布时间】:2016-04-15 00:49:06
【问题描述】:

我正在对 Firebase 执行多路径更新,导致收到 undocumented error code 18

我可以以较小的块执行多路径更新,并且我收到了成功的 200,但是当它全部合二为一时,请求失败。另外,我知道请求的格式正确,因为我确保要小心the multi-path update pitfall explained here

那么,交易是什么?

【问题讨论】:

    标签: javascript firebase firebase-realtime-database


    【解决方案1】:

    出乎意料的是,我在身份验证令牌中将“调试”声明设置为 true

    因为多路径更新会在每个提供的路径上测试安全规则,并且“x-firebase-auth-debug”响应标头包含每个安全规则的结果,这可能会导致标头非常大。大到导致 Firebase 返回状态码 18,即cURL Partial File error

    现在,显然有no actual header-size limit defined by HTTP,但大多数网络服务器对进出的标头大小施加了某种限制。如果大小太大,服务器应该返回“413 Entity Too large”,Firebase 没有这样做,这是问题的原因(我相信)。

    从令牌中删除“调试”声明并执行完全相同的多路径更新会成功。

    编辑:

    在其他情况下,我收到了其他 cURL 错误,而不是预期的 HTTP 响应代码 - 是否有原因导致这些错误未记录在案? (我猜它可能是我发送请求的服务器,所以我会在那里检查并稍后更新,但我想我会问以防万一......)

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-12-15
      • 1970-01-01
      • 1970-01-01
      • 2014-02-08
      • 2017-12-12
      相关资源
      最近更新 更多