规则。火库。要求
接口静态
传入请求上下文。
特性
授权
请求身份验证上下文。
-
uid
- 请求用户的 UID。 -
token
- JWT 令牌声明的映射。
token
映射包含以下值:
场地 | 描述 |
---|---|
`电子邮件` | 与帐户关联的电子邮件地址(如果存在)。 |
`电子邮件已验证` | 如果用户已验证他们有权访问“电子邮件”地址,则为“true”。 |
`电话号码` | 与帐户关联的电话号码(如果存在)。 |
`名字` | 用户的显示名称(如果已设置)。 |
`子` | 用户的 Firebase UID。这在项目中是独一无二的。 |
`firebase.identities` | 与该用户帐户关联的所有身份的映射。地图的键可以是以下任意一个:`email`、`phone`、`google.com`、`facebook.com`、`github.com`、`twitter.com`。映射的值是与帐户关联的每个身份提供商的唯一标识符列表。例如,`request.auth.token.firebase.identities["google.com"][0]`包含与该帐户关联的第一个 Google 用户 ID。 |
`firebase.sign_in_provider` | 用于获取此令牌的登录提供程序。可以是以下字符串之一:`custom`、`password`、`phone`、`anonymous`、`google.com`、`facebook.com`、`github.com`、`twitter.com`。 |
`firebase.租户` | 与帐户关联的tenantId(如果存在)。例如`tenant2-m6tyz` |
方法
请求方法。之一:
-
get
-
list
-
create
-
update
-
delete
小路
非空规则.Path
受影响资源的路径。
询问
非空规则.Map
查询属性的映射(如果存在)。
-
limit
- 查询限制子句。 -
offset
- 查询偏移子句。 -
orderBy
- 查询 orderBy 子句。
例子
// Limit documents per request to 50
allow list: if request.query.limit <= 50
资源
新的资源值仅在写入请求时出现。
时间
非空规则.时间戳
当服务收到请求时。
对于包含服务器端时间戳的 Firestore 写入操作,该时间将等于服务器时间戳。
例子
// Make sure that 'myServerTimestampField' was set using a
// server-side timestamp.
request.time == request.resource.data.myServerTimestampField