firebase通知令牌可以由哪些字符组成?
官方文件没有透露太多关于代币可能的特征:https://firebase.google.com/docs/cloud-messaging/concept-options#credentials
我怀疑我的应用程序的安全性正在阻止某些令牌,因为我在后台看到了这样的日志消息:
请求被拒绝,因为URL包含潜在的恶意字符串">
令牌是否可以由";"组成字符?
API合约未指定FCM代币的格式,因此您不应试图依赖此处的具体内容,因为它们可能会随着时间的推移而更改,而不会发出通知。如果以URL格式传递这些字符串,则应将其视为常规字符串,并正确地对其进行转义。
目前,字符包括与:
连接的64个基本编码字符串,因此字符列表包括A-Za-z0-9+/=:
(同样,这可能随时更改,不要试图在代码中依赖它(。
不是你问的问题,但这似乎不太可能是你错误的根本原因。如果你能对问题进行最低限度的重新处理,并出示一些证据表明这是由FCM服务引起的,而不是编码错误,那么通过支持提交一个错误可能是值得的。
通知令牌应由带短划线的字母数字字符组成。错误报告URL本身包含恶意字符,但没有说明来自哪里。
我将介绍一个catch,它将把URL及其有效载荷编码成一个编码的URL字符串,并保存它以供进一步调查,最好是一个专用于它的实时数据库桶
然后,您可以对URL进行解码,以确保URL和有效负载是安全的,不会出现其他问题。
Javascript编码URI组件
Javascript解码URI组件