当前位置: 首页 > 知识库问答 >
问题:

FCM pushnotification中的无效注册

潘弘扬
2023-03-14

我试图使用FCM进行推送通知,但出现了一个错误

{“多播id”:543826995043253,“成功”:0,“失败”:1,“规范id”:0,“结果”:[{“错误”:“无效注册”}]

我的代码是:

var applicationID = "AAAAU1NcEvw:APA91bF6V....blq3lFdU";
            var senderId = "357...668";
            string deviceId = "cmWVx1UBniA:APA91b.....ukG77K";
            WebRequest tRequest = WebRequest.Create("https://fcm.googleapis.com/fcm/send");
            tRequest.Method = "post";
            tRequest.ContentType = "application/json";
            var data = new
            {
                to = deviceId,
                notification = new
                {
                    body = "This is the message",
                    title = "This is the title",
                    icon = "myicon"
                }
            };
            var json = jss.Serialize(data);
            Byte[] byteArray = Encoding.UTF8.GetBytes(json);
            tRequest.Headers.Add(string.Format("Authorization: key={0}", applicationID));
            tRequest.Headers.Add(string.Format("Sender: id={0}", senderId));
            tRequest.ContentLength = byteArray.Length;

            using (Stream dataStream = tRequest.GetRequestStream())
            {
                dataStream.Write(byteArray, 0, byteArray.Length);
                using (WebResponse tResponse = tRequest.GetResponse())
                {
                    using (Stream dataStreamResponse = tResponse.GetResponseStream())
                    using (StreamReader tReader = new StreamReader(dataStreamResponse))
                    {
                        String sResponseFromServer = tReader.ReadToEnd();
                        // Response.Write(sResponseFromServer);
                    }
                }
            }

共有1个答案

施海
2023-03-14

由于错误状态,这意味着deviceId未注册,您可能拼写错误或已刷新。

此外,如果你在发送到主题时遇到这种情况,请确保你在前面加了前缀“/topics/”,这样firebase的好人就知道你发送到的是一个主题,而不是某个特定的人。

 类似资料:
  • 我通过在自定义登录API中生成JWT(JSON Web Token)在Azure移动服务中使用自定义身份验证。一旦用户拥有JWT,它将一直有效,直到达到其编码的过期时间。 除了在每个经过身份验证的请求上根据会话表显式检查JWT令牌之外,是否有办法在JWT令牌到期之前使其失效(当用户注销时会发生这种情况),以便任何后续使用该令牌作为头中的值发出的请求都不会到达任何表API或自定义API脚本?

  • 问题内容: 今天,我遇到了一个以前从未见过的错误(在PDO中),但是当您考虑一下时,它是显而易见的。 我收到以下错误: 我使用的查询类似于以下内容: 显然,我有更多的参数和更长的查询。 为什么会给我这个错误? 问题答案: 解决方案是显而易见的:PDO不理会注释,而是尝试绑定不存在的变量’:Z’。您不能在PDO的注释中使用参数(除非您绑定它们)。 在注释中使用问号也存在类似的错误。

  • 我用FCM发送推送通知,我的代码在Chrome上运行得很好,但在Firefox上却很困难。我得到了这样的回应 我的完整API请求如下所示 https://fcm.googleapis.com/fcm/send 标题 TTL:60 用户代理:Fiddler 主持人:fcm。古格里皮斯。通用域名格式 授权:密钥=aBCABC-aBCABC 内容类型:应用程序/json 内容-长度:250 身体 {“t

  • 我有两个表:人员和帐户(一对多关系)。 这不是我第一次使用一对多关系,但我以前没有遇到过这个错误。 完整的StackTrace:

  • 问题内容: 上面是Tomcat的片段web.xml。NEXTEVENT启动时的网址格式 映射中无效的 如果有人可以提示错误,将不胜感激。 问题答案: 网址格式无效。它可以以星号结尾或以一个星号开头(表示文件扩展名映射)。 url-pattern规范: 以’/’字符开头并以’/ ‘后缀结尾的字符串用于路径映射。 以“ ”开头的字符串。前缀用作扩展名映射。 仅包含“ /”字符的字符串表示应用程序的“默

  • 问题内容: 这个div 比这上面显示的 当我在第一个div中分配z-index:98时,一切都很好!如果需要,我可以提供更多代码。 问题答案: z-index面向其父级-它们都在同一个父级元素中吗?z-index实现了自己的堆栈-例如: 框D,E和F是框C的后代->框F(z-index:-1)覆盖框B(z-index:1),因为它是框c的后裔(此框与z-索引:3,超出框b)