为什么我收到此错误有效载荷无效?

Why im getting this error invalid Payload?

import admin from "firebase-admin";

async function notifyUser(message ,title, photoURL,token , uid , notificationsOn ) {

  const messages = [];

  const payload = {
    notification: {
      title: title,
      body: message,
    },
    data: {
      uid,
    },
    android: {
      notification: {
        image: photoURL,
      },
    },
    apns: {
      payload: {
        aps: {
          "mutable-content": 1,
        },
      },
      fcm_options: {
        image: photoURL,
      },
    },
  };

  try {
 if (token) {
     

   
  messages.push({ token: token, ...payload });
  console.log("yes");
}
    

    if (messages.length && notificationsOn==true) {
      await admin.messaging().sendAll(messages);
      console.log("Token for user, send notification.");
    }
  } catch (error) {
    const functions = require("firebase-functions");

    functions.logger.log("Hello from info. Here's an object:", error);
   

    console.log(photoURL);
  console.log(notificationsOn);
      console.log(token);
      console.log(message);
      console.log(uid);
      console.log(title)
    console.log("No token for user, can not send notification.");
   
    return {error:error.code};
  }

  return;
};

export {notifyUser} ;

我得到的错误

169行就是这一行

 await admin.messaging().sendAll(messages);

它总是记录“没有用户令牌无法发送通知”。我不知道为什么。我检查了 30 次。日志不为空并提供正确的输出。令牌不为空。

它不适用于 android 和 iOS。但是,当通过 firebase 向 android 或 iOS 发送通知时,它会起作用。并检索到通知。

希望真的有人有想法。我还尝试通过令牌从 firebase 发送通知。这也有效。正如我所说,我检查了它应该工作但没有工作的每个输出。

如果您认为我在项目配置中做错了什么,请告诉我您认为可能是什么。

结果是添加了这条语句

token:像这样的token

  const payload = {
    notification: {
      title: title,
      body: message,
    },
    token: token,
    data: {
      uid,
    },
    android: {
      notification: {
        image: photoURL,
      },
    },
    apns: {
      payload: {
        aps: {
          "mutable-content": 1,
        },
      },
      fcm_options: {
        image: photoURL,
      },
    },
  };

进入有效载荷但在所有其他语句之外修复了问题。