我正在使用带有以下更改和订阅的Appsync构建基于聊天的应用程序。
但是,聊天室是受管的,并且取决于聊天设置(由主持人控制),消息可以对所有人可见,也可以对主持人单独可见。
出于安全原因,我不想在createMessage突变的响应中发送“ receiverId”。
但是,如果突变响应中不存在此字段,则无法在“ receiverId”上创建带有过滤器的订阅。
有没有其他方法可以实现这种聊天行为?
mutation createMessage {
createMessage(input: {
chatId: "chatId1",
userId: "userA",
content: "sample message"
}) {
id,
content,
chatId,
userId,
receiverId
}
}
and a corresponding subscription
subscription onCreateMessage {
onCreateMessage(input: {receiverId: "userB"
}) {
id,
content,
chatId,
userId,
receiverUserId
}
}