首页 > 解决方案 > 发送推送通知时 SenderId 不匹配

问题描述

我正在尝试开始使用 Firebase 进行推送通知。我运行代码:

var sender = FirebaseApp.Create(
  new AppOptions
    {                
       Credential = GoogleCredential.FromFile("/path/to/my/key.json")
     }
);

var message = new Message
  {
    Data = new Dictionary<string, string>
      {
        { "foo", "bar" }
      },
     Token = "" // the token is here
  };

await FirebaseMessaging.DefaultInstance.SendAsync(message);

但我得到以下异常:

System.AggregateException: One or more errors occurred. (SenderId mismatch)
 ---> FirebaseAdmin.Messaging.FirebaseMessagingException: SenderId mismatch
   at FirebaseAdmin.Util.ErrorHandlingHttpClient`1.SendAndReadAsync(HttpRequestMessage request, CancellationToken cancellationToken)
   at FirebaseAdmin.Util.ErrorHandlingHttpClient`1.SendAndDeserializeAsync[TResult](HttpRequestMessage request, CancellationToken cancellationToken)
   at FirebaseAdmin.Messaging.FirebaseMessagingClient.SendAsync(Message message, Boolean dryRun, CancellationToken cancellationToken)
   at FirebaseAdmin.Messaging.FirebaseMessaging.SendAsync(Message message, Boolean dryRun, CancellationToken cancellationToken)
   at FirebaseAdmin.Messaging.FirebaseMessaging.SendAsync(Message message, Boolean dryRun)
   at FirebaseAdmin.Messaging.FirebaseMessaging.SendAsync(Message message)

我发现了更多细节:如果我使用 FBC 控制台发送推送,则应用程序会收到它。
如果我用我的后端发送通知并指定一些主题而不是令牌,我不会得到任何异常和通知的 Id ( /projects/{my-project-id}/messages/{some-numbers-here})。但是该应用程序没有收到通知。

我为移动应用程序和服务器下载并使用了生成的文件。而且我不知道我的凭据会出现什么问题。有人有线索吗?

标签: c#asp.netasp.net-corepush-notificationfirebase-cloud-messaging

解决方案


推荐阅读