ApolloClientにAppsyncのエンドポイントを繋げてQueryとMutaionの動作を確認したのですが、
Subscriptionのみ反応しませんでした。
AppSyncのコンソールにてsubscriptionをして、
Front側でMutationを行ったところ、
AppSyncのコンソールではMutationをキャッチできていましたが、Front側ApolloClientは無反応でした。
apollo: { listMessages: { query: listMessagesGql, subscribeToMore: [ { document: gql` subscription newMessage { onCreateMessage { id content username } } `, // Variables passed to the subscription. Since we're using a function, // they are reactive variables() { return { param: this.param } }, updateQuery: (prev, { subscriptionData }) => { console.log(subscriptionData) if (!subscriptionData.data) { return prev } // this.$store.state.wss = // subscriptionData.extensions.subscription.mqttConections[0].url const newMessage = subscriptionData.data.onCreateMessage console.log(newMessage) if (newMessage) { return prev.listMessages.items.push(newMessage) } } } ] } },
調べてみるとMQTTというプロトコルを用いて通信しているため、
ApolloClientが受け取れていなかったようですが、
調べてもApolloClientでのMQTTの受け取り方がわかりませんでした。
もしなにか知っていたら教えて下さい!
あなたの回答
tips
プレビュー