[英]Connection timed out Laravel-echo-server
我知道並且我看過這個問題
獲取 ERR_CONNECTION_TIMED_OUT Laravel 回顯服務器
但我在評論中嘗試了解決方案,但它不起作用。
我有我的 Laravel-echo-server.json
{
"authHost": "https://mysite.it",
"authEndpoint": "/broadcasting/auth",
"clients": [],
"database": "redis",
"databaseConfig": {
"redis": {
"host":"0.0.0.0",
"port":"6379",
"password": "mypwd"
},
"sqlite": {
"databasePath": "/database/laravel-echo-server.sqlite"
}
},
"devMode": true,
"host": null,
"port": "6001",
"protocol": "https",
"socketio": {},
"secureOptions": 67108864,
"sslCertPath": "path_cert" ,
"sslKeyPath": "path_key" ,
"sslCertChainPath": "",
"sslPassphrase": "",
"subscribers": {
"http": true,
"redis": true
},
"apiOriginAllow": {
"allowCors": true,
"allowOrigin": "*",
"allowMethods": "GET, PoST",
"allowHeaders": "Origin, Content-Type, X-Auth-Token, X-Requested -With, Accept, Authorization, X-CSRF-TOKEN, X-Socket-IdOrigin, Content-Type, X-A uth-Token, X-Requested-With, Accept, Authorization, X-CSRF-TOKEN, X-Socket-IdOri gin, Content-Type, X-Auth-Token, X-Requested-With, Accept, Authorization, X-CSRF -TOKEN, X-Socket-Id"
}
}
我在我的 bootstrapjs 中有與前端的連接:
import Vue from 'vue'
import Echo from 'laravel-echo'
window.io = require('socket.io-client')
export var echo_instance = new Echo({
broadcaster: 'socket.io',
host: window.location.hostname + ':6001',
auth: {
headers: {
'Authorization': "Bearer " + localStorage.getItem('token')
}
}
})
Vue.prototype.$echo = echo_instance
export default Vue
我檢查了端口是否已關閉,但使用 netstat -an 我可以看到:
tcp6 0 0 :::6001 :::* 聽
但是當我嘗試啟動我的應用程序時,我收到:
app.js:569 GET https://mysite.it:6001/socket.io/?EIO=3&transport=polling&t=NKoWZoK net::ERR_CONNECTION_TIMED_OUT
如何將 laravel echo 與 https 協議一起使用?
這可能是因為您有錯誤的訪問令牌(動態添加)。 為什么不首先嘗試為用戶使用靜態訪問令牌(復制訪問令牌並粘貼它而不是 localStorage.getItem('token')),看看它是否有效。
還可以嘗試將以下內容放入 laravel-echo-server.json 文件中
"allowOrigin": "http://mysite.it:80"
並且,看看 APP_URL 在 .env 文件中是否不同
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.