node.js - Laravel Echo 服务器无法进行身份验证,HTTP 状态为 500

标签 node.js laravel laravel-echo

我已经安装了 Laravel echo serverLaravel echo client .

以下是laravel-echo-server.json配置。

{
"authHost": "http://taxation.com",
"authEndpoint": "/broadcasting/auth",
"clients": [
    {
        "appId": "APP_ID",
        "key": "someKey"
    }
],
"database": "redis",
"databaseConfig": {
    "redis": {},
    "sqlite": {
        "databasePath": "/database/laravel-echo-server.sqlite"
    }
},
"devMode": true,
"host": "127.0.0.1",
"port": "3000",
"protocol": "http",
"socketio": {},
"sslCertPath": "",
"sslKeyPath": "",
"sslCertChainPath": "",
"sslPassphrase": ""
}

以下脚本监听 channel 事件。它可以通过 npm run dev 构建良好。

import Echo from 'laravel-echo'
let token = document.head.querySelector('meta[name="token"]');
if (token) {
    window.axios.defaults.headers.common['X-CSRF-TOKEN'] = token.content;
} else {
    console.error('CSRF token not found: https://laravel.com/docs/csrf#csrf-x-csrf-token');
}
window.Echo = new Echo({
    broadcaster: 'socket.io',
    host: '127.0.0.1:3000',
    reconnectionAttempts: 5
});


window.Echo.join('checked-in-1')
            .listen('.user.checked_in', (e) => {
            console.log(e);
        });

当尝试监听 start laravel-echo-server 命令上的任何事件时。它不断抛出客户端无法进行身份验证,获得 HTTP 状态 500

注意:

我真的没有在 laravel-echo-serve 和 google 上找到任何有用的东西。

任何帮助将不胜感激。

Laravel V5.4

谢谢

最佳答案

刚刚因为 CSRF token 而遇到问题。没有将 token 传递给 echo。

window.Echo = new Echo({
    broadcaster: 'socket.io',
    host: '127.0.0.1:3000',
    reconnectionAttempts: 5,
    csrfToken: token.content <--
});

关于node.js - Laravel Echo 服务器无法进行身份验证,HTTP 状态为 500,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46152777/

相关文章:

node.js - Sequelize Node.js - 嵌套对象

php - 仅支持的密码是 AES-128-CBC 和 AES-256-CBC 错误

php - Laravel 通知没有任何错误地广播?

Laravel-echo-server , net::ERR_CONNECTION_TIMED_OUT

javascript - laravel 回声 : "Uncaught ReferenceError: Echo is not defined"

Javascript Date - 如何知道 DST 在给定时区是否有效

node.js - 当文档更新时,MongooseJS 会弄乱预导入的数据

php - 使用 vue.js 在 laravel 中使用消息重定向

javascript - 识别vuejs组件的多个容器

mysql - 如何在不断开连接的情况下使用 Node.js 终止 MySQL 查询?