我正在使用Android上的Firebase Cloud Functions库,并使用getHttpsCallable调用云函数。
问题在于该函数需要15到20秒的时间才能将结果返回给客户端,因此客户端会引发异常java.net.SocketTimeoutException: timeout.
有什么方法可以更改超时时间吗?
答案 0 :(得分:2)
当前无法更改客户端的超时。团队知道在某些情况下这是一个问题。在这变为可配置之前,您有两个选择,最好的选择是编写常规的HTTP函数,并使用自己的HTTP客户端库来允许配置超时。
您可以file a feature request添加声音。
答案 1 :(得分:1)
似乎下面的文章在10月25日更新。因此,他们那时可能已添加了此功能。不确定是否曾经有过。
正如article所说,我们现在可以描述超时和内存:
const runtimeOpts = {
timeoutSeconds: 300,
memory: '1GB'
}
exports.myStorageFunction = functions
.runWith(runtimeOpts)
.storage
.object()
.onFinalize((object) = > {
// do some complicated things that take a lot of memory and time
});
或者,直接通过Google Cloud Platform Console对其进行编辑:
答案 2 :(得分:1)
SDK的最新版本添加了setTimeout
和withTimeout
方法,可用于配置自定义超时。
发行说明: https://firebase.google.com/support/release-notes/android