Как мне заставить Laravel Echo работать на производстве? - PullRequest
0 голосов
/ 25 октября 2018

У меня проблемы с Laravel Echo (я думаю).Я создал приложение Vue Chat, которое работает локально.Я даже клонировал его на другую машину, и он работал нормально.Но когда я запускаю его в производство, он не работает.Я не запускаю npm на сервере, я просто запускаю npm prod перед фиксацией и отправкой на сервер.По какой-то причине это просто не работает, хотя.Сообщения становятся доступными, так как я вижу их в консоли отладки.

Вот часть кода:

mounted() { 
    console.log('mounted');

    Echo.private(`messages.${this.user.id}`)
        .listen('NewMessage', (e) => {
            console.log('in echo');
            this.hanleIncoming(e.message);
        });

    axios.get('/contacts')
        .then((response) => {
            this.contacts = response.data;
        });
},
methods: {
    startConversationWith(contact) {
        this.updateUnreadCount(contact, true);

        axios.get(`/conversation/${contact.id}`)
            .then((response) => {
                this.messages = response.data;
                this.selectedContact = contact;
            })
    },

    saveNewMessage(message) {
        console.log(message);
        this.messages.push(message);
    },

    hanleIncoming(message) {
        if (this.selectedContact && message.from == this.selectedContact.id) {
            console.log('inside if of handleincoming');
            this.saveNewMessage(message);
            return;
        }

        this.updateUnreadCount(message.from_contact, false);
    }
}

Когда локально, я получаю все console.logs, но наЯ получаю только один, и это потому, что saveMessage вызывается при нажатии Enter из окна чата сообщений.Нужно ли что-то устанавливать на сервере, чтобы заставить работать эхо, так как я не делаю npm-установку на сервер.Я не думаю, что узел даже установлен.Как я могу получить эхо для работы на производстве?Любая помощь будет оценена!

1 Ответ

0 голосов
/ 25 октября 2018

Вы начали эхо-сервер на производстве?

...