【问题标题】:Laravel Echo Server can not be authenticated, got HTTP status 500Laravel Echo Server 无法通过身份验证,获得 HTTP 状态 500
【发布时间】:2018-02-19 12:32:51
【问题描述】:

我已经安装了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": ""
}

以下脚本侦听频道事件。使用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 命令上侦听任何事件时。它一直在抛出Client can not be authenticated, got HTTP status 500

注意:

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

任何帮助将不胜感激。

Laravel V5.4

谢谢

【问题讨论】:

    标签: node.js laravel laravel-echo


    【解决方案1】:

    只是因为 CSRF 令牌而遇到问题。没有将令牌传递给 echo。

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

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2019-01-25
      • 2018-11-24
      • 2020-07-24
      • 2018-11-21
      • 1970-01-01
      • 2018-07-14
      • 2021-07-18
      • 2019-01-04
      相关资源
      最近更新 更多