我的许多Firestore文档和集合都是以阿拉伯语命名的,但是当我想编写安全规则时,我注意到阿拉伯语文本不被接受?我需要如何解决这个问题的帮助?我尝试了许多类型来写安全规则中的阿拉伯语集合名称,但不被Firebase接受,我不能在互联网上为这种情况提供任何有用的解决方案。
46qrfjad1#
规则定义中的路径段只能包含[A-Za-z0-9]加上一些特殊字符,如*和%。对于其他字符,您应该使用十六进制/URL转义(使用%)。因此,如果我有一个名为één的集合,我会有一个匹配它的规则:
[A-Za-z0-9]
*
%
match /%C3%A9%C3%A9n/{docid} { allow read; }
这里的%C3%A9%C3%A9n是集合名称één的URL编码,在本例中是通过encodeURI('één')获得的。
%C3%A9%C3%A9n
één
encodeURI('één')
1条答案
按热度按时间46qrfjad1#
规则定义中的路径段只能包含
[A-Za-z0-9]
加上一些特殊字符,如*
和%
。对于其他字符,您应该使用十六进制/URL转义(使用%)。因此,如果我有一个名为één的集合,我会有一个匹配它的规则:
这里的
%C3%A9%C3%A9n
是集合名称één
的URL编码,在本例中是通过encodeURI('één')
获得的。