我正在对Firebase执行多路径更新,导致收到undocumented error code 18。Firebase Rest API状态代码18
我可以在较小的块中执行多路径更新,并且我收到一个成功的200,但是当它全部在一个时,请求失败。此外,我知道请求形成正确,因为我一定要小心the multi-path update pitfall explained here。
那么,这是怎么回事?
我正在对Firebase执行多路径更新,导致收到undocumented error code 18。Firebase Rest API状态代码18
我可以在较小的块中执行多路径更新,并且我收到一个成功的200,但是当它全部在一个时,请求失败。此外,我知道请求形成正确,因为我一定要小心the multi-path update pitfall explained here。
那么,这是怎么回事?
这笔交易意外的是,我在“身份验证”令牌中将“调试”声明设置为true
。
由于多路径更新测试每个提供的路径的安全规则,并且“x-firebase-auth-debug”响应头包含每个安全规则的结果,这可能会导致非常大的头。非常大,导致Firebase返回状态码18,即cURL Partial File error。
现在显然有no actual header-size limit defined by HTTP,但是大多数web服务器对输入和输出头的大小都有一些限制。如果规模太大,服务器应该返回一个“413实体太大”,这是Firebase没有做的,并且是问题的原因(我相信)。
从令牌中删除“调试”声明并执行完全相同的多路径更新会导致成功。
编辑:
在其他场合,我已经收到了其他卷曲错误,而不是预期的HTTP响应代码 - 是有一个原因是,这些仍没有证件? (我想这可能是我发送请求的服务器,所以我会在稍后检查并更新,但我想我会问,以防万一......)