【问题标题】:not able to use laravel-echo in vue cli project无法在 vue cli 项目中使用 laravel-echo
【发布时间】:2021-01-05 06:43:48
【问题描述】:

我正在尝试使用带有 laravel-echo 的 vue cli 项目创建一个聊天应用程序。但是由于 419 未知状态 /broadcasting/auth 出现错误。 这是我的 main.js 文件

import Vue from "vue";
import App from "./App.vue";
import "./registerServiceWorker";
import router from "./router";
import store from "./store";
import i18n from "./i18n";
import VueConfirmDialog from "vue-confirm-dialog";
import VueChatScroll from "vue-chat-scroll";
import Echo from "laravel-echo";


Vue.use(VueConfirmDialog);
Vue.config.productionTip = false;

new Vue({
  router,
  store,
  i18n,
  render: h => h(App)
}).$mount("#app");

window.Pusher = require("pusher-js");

window.Echo = new Echo({
  broadcaster: "pusher",
  // key: process.env.MIX_PUSHER_APP_KEY,
  host: "http://localhost:8000",
  authEndpoint: "http://localhost:8000/broadcasting/auth",
  key: "key",
  // cluster: process.env.MIX_PUSHER_APP_CLUSTER,
  cluster: "ap2",
  forceTLS: true
});

这就是我尝试收听事件的方式

window.Echo.channel("Chat").listen("SessionEvent", e => {
      let friend = this.friends.find(friend => friend.id === e.session_by);
      friend.session = e.session;
      this.listenForEverySession(friend);
    });

谁能告诉我是什么问题?这是前端,laravel 项目是后端

This is error I am getting

【问题讨论】:

    标签: laravel vue.js vuejs2 pusher pusher-js


    【解决方案1】:

    在您的channels.php 中添加guards

    Broadcast::channel('Chat', function ($user) {
        return true;
    }, ['guards' => 'web']); //  add this guards
    

    并删除 authEndpoint 它应该会自动检测

    【讨论】:

    • 做到了,还是同样的错误。我已将图片附加到有错误的问题中,请查看
    猜你喜欢
    • 2019-12-21
    • 1970-01-01
    • 1970-01-01
    • 2018-10-05
    • 2016-11-28
    • 2019-05-04
    • 1970-01-01
    • 2018-09-18
    • 2017-02-03
    相关资源
    最近更新 更多