1

我已经为Chrome推送通知部署了sample code并将gcm_sender_id更新为新配置的项目,客户端可以毫无问题地订阅/取消订阅,但是当发布请求以发送响应时不断返回MismatchSenderIdChrome网络通知'MismatchSenderId'错误

我已经尝试创建多个新项目console.firebase.google.com,但似乎没有任何工作。

请求:

POST /gcm/send HTTP/1.1 
Host: android.googleapis.com 
Authorization: key=<Server Key/> 
Content-Type: application/json 
{ 
    "registration_ids":[ 
     "<Registration-ID/>" 
    ] 
} 

响应:

{ 
    "multicast_id": 6881038306061588882, 
    "success": 0, 
    "failure": 1, 
    "canonical_ids": 0, 
    "results": [ 
    { 
     "error": "MismatchSenderId" 
    } 
    ] 
} 

enter image description here

我使用的是 '服务器密钥' 作为请求身份验证令牌(其中工程作为401时返回无效键被使用),并使用清单中的“发件人ID”:

manifest.json

{ 
    "name": "Notification Demo", 
    "gcm_sender_id": "<Sender ID/>" 
} 

回答

1

这是我自己的错;样本注册ID的格式与我看到的生成样式不同,并且没有包含我用来从订阅端点字符串中删除注册ID的分号。用正斜杠分割端点,并将最后一个实例返回正确的注册ID,该工具正常工作。