适用于旧版捆绑服务的 Capabilities API
使用集合让一切井井有条
根据您的偏好保存内容并对其进行分类。
利用 Capabilities API,您的应用可以检测特定 API 功能的服务中断情况和计划内停机时间。您可以使用此 API 来检测某项功能何时不可用并绕开这个时间,从而缩短应用停机时间。 如需查看 capability 软件包的内容,请参阅 capability 软件包参考文档。
。
例如,如果您使用 Datastore API,则可以使用 Capabilities API 来检测 Datastore API 将在何时不可用,然后向用户报告错误:
funchandler(whttp.ResponseWriter,r*http.Request){ctx:=appengine.NewContext(r)// Check if the Datastore API is availableif!capability.Enabled(ctx,"datastore_v3","*"){http.Error(w,"This service is currently unavailable.",503)return}// do Datastore lookup ...}
funccheckDatastoreMode(whttp.ResponseWriter,r*http.Request){ctx:=appengine.NewContext(r)// Check if the Datastore service is in read-only mode.if!capability.Enabled(ctx,"datastore_v3","write"){// Datastore is in read-only mode.}}
在 Go 1.11 中使用 Capabilities API
如果提供的 API 和功能可用,则 capability.Enabled 函数返回 true。您必须传递功能名称(例如 "write")或通配符 "*" 才能查询 API 的所有功能。