关于.NET Google.Cloud.Firestore API异常契约的技术咨询
Google .NET Firestore库业务场景异常说明
Google的.NET Firestore官方API文档未明确枚举业务相关异常,但基于实际使用和Google Cloud .NET客户端的通用异常体系,以下是你关注的场景对应的典型异常:
各场景具体异常
- 无有效身份验证调用
FirestoreDbBuilder.BuildAsync():抛出GoogleApiException,错误码通常为Unauthorized(401)或PermissionDenied(403)——前者代表身份凭据无效或未提供,后者代表凭据无目标Firestore资源的访问权限。 - 无网络连接调用
FirestoreDbBuilder.BuildAsync():抛出HttpRequestException(或其派生的网络子类异常),部分情况下会封装在GoogleApiException中,提示无法建立网络连接或网络不可达。 CollectionReference.GetSnapshotAsync()执行时网络断开:抛出GoogleApiException,错误码多为Unavailable(503)或DeadlineExceeded(504),也可能直接抛出HttpRequestException,表示请求因网络中断无法完成。CollectionReference.Listen(Action<QuerySnapshot>, CancellationToken)监听过程中网络断开:该方法不会直接抛出异常,而是在后续尝试同步数据时触发错误处理逻辑(部分版本可通过重载传入错误回调),此时会收到GoogleApiException(错误码常为Unavailable)或网络相关异常;也可通过返回的ListenerRegistration跟踪监听状态变化。
额外提示
大部分Firestore业务错误会统一封装为GoogleApiException,可通过其StatusCode和Message属性定位具体问题;网络类异常则遵循.NET标准的网络异常体系。
内容的提问来源于stack exchange,提问作者Jeremy
相关产品推荐
相关产品推荐

