当我使用从Firebase获得的令牌进行测试时,我收到此错误 错误 - 请求的身份验证(服务器(密钥包含无效或格式错误的 FCM 令牌(也称为 IID 令牌(
这些是我用来从Firebase获取令牌的代码。
async getToken() {
let fcmToken = await AsyncStorage.getItem('fcmToken');
console.log("before fcmToken: ", fcmToken);
if (!fcmToken) {
fcmToken = await firebase.messaging().getToken();
if (fcmToken) {
console.log("after fcmToken: ", fcmToken);
await AsyncStorage.setItem('fcmToken', fcmToken);
}
}
}
async requestPermission() {
firebase.messaging().requestPermission()
.then(() => {
this.getToken();
})
.catch(error => {
console.log('permission rejected');
});
}
async checkPermission() {
firebase.messaging().hasPermission()
.then(enabled => {
if (enabled) {
console.log("Permission granted");
this.getToken();
} else {
console.log("Request Permission");
this.requestPermission();
}
});
}`
但是当我使用APNS和GCM测试仪在线测试时,我得到了此错误401 https://pushtry.com/
请问我有什么方法可以获取反应原生安卓应用程序的推送通知吗?
你可以使用邮递员。向此网址"https://fcm.googleapis.com/fcm/send"发出发布请求。 您需要发送如下对象:
{
"data":
{
"title": "your title",
"body": "your body"
},
"notification": {
"title": "your title",
"body": "your body"
},
"registration_ids" : ["czf_nv_t1JA:APA91bGOyY3lTSG9b7Nr71xVo_Xn5RrxOIOwVfnKDv2OBanQjx1eQQyqdM3PFOd1Pjapm_DWn1R327iDyEwEeXjflJ3DyaGFF4iXmqot-OsyDt-Iz99Lu3MZZTvOSFIPiYgiaGHP5ByO"]
}
registration_ids是你的令牌。此外,您还需要使用密钥授权为您的请求设置一个标头,它的值来自 firebase 控制台 https://developer.clevertap.com/docs/find-your-fcm-sender-id-fcm-server-api-key。
确保授权值符合您的 Firebase 云消息服务器密钥。 参考链接:- https://www.djamware.com/post/5c6ccd1f80aca754f7a9d1ec/push-notification-using-ionic-4-and-firebase-cloud-messaging