簡體   English   中英

Firebase 雲消息傳遞無法解析主題名稱

[英]Firebase Cloud Messaging Cannot parse topic name

我正在嘗試訂閱我的 iOS 應用程序中的主題,但不斷收到錯誤消息:

<FIRMessaging/WARNING> Cannot parse topic name /topics/pets/cnlLksAxmdYPkDjEftDwZjFwvDw2_coffee. Will not subscribe.

我要訂閱的代碼是這樣的:

FIRMessaging.messaging().subscribe(toTopic: "/topics/pets/\(name)")

其中name是您在錯誤中看到的主題的最后一部分。

有人知道我做錯了什么嗎? 我已經確認 Firebase 消息正在正確接收通知和所有通知。

/字符不是主題名稱的允許字符。

允許的字符是:

  • AZ
  • AZ
  • 0-9
  • -_ , . ~%

我可以通過在Android中測試主題名稱為pets/123asd以及顯示的日志來確認這些是唯一允許的字符:

Invalid topic name: Pets/123asd does not match the allowed format [a-zA-Z0-9-_.~%]{1,900}

對於iOS,前綴/topics/是必需的並且仍然有效。 無效字符僅適用於前綴后包含的主題名稱

如果要為包含不允許字符的主題選擇字符串,則需要將該字符串設為原始字符串。

Ex=> String str=r'something@gmail.com'

這里的字符串“str”包含一個對 FCM 主題無效的“@”字符,但通過將其設為原始字符串,可以成功解析它。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM