React + Socket.io未连接到Heroku上的服务器应用程序

时间:2018-06-20 14:57:30

标签: node.js reactjs sockets heroku socket.io

我做了很多研究,但是找不到相关的话题。

我有 2个应用,已部署到Heroku。使用“ Create React App”创建的React中的一个作为客户端,另一个为基本Node。

在本地运行时,一切都很好,使用socket.io的两个应用之间的通信正常。

我还测试了在本地运行客户端应用程序并将套接字连接到在Heroku上运行的Node服务器的情况,并且该服务器实际上正在工作。但是当我在Heroku上部署客户端时,它不再工作

>

这是我在客户端中连接套接字的方式:

import openSocket from 'socket.io-client';

socket = openSocket('http://blind-spotify-backend.herokuapp.com');

我认为套接字服务器不是问题:

let app = express()
var server = http.createServer(app)
var iop = require('socket.io').listen(server);

iop.sockets.on('connection', function (socket) {
  console.log('Un client est connecté !');
}

let port = process.env.PORT || 8888
server.listen(port)

我检查了两个应用程序的heroku日志,但没有错误或感兴趣的东西。 Heroku上的部署也进展顺利,没有任何警告。就像在Heroku上运行时忽略客户端的套接字打开一样。

让我最困扰的是,当我的客户端在本地运行并且服务器在Heroku上运行时,此代码可以正常工作。

任何有关如何隔离问题的想法将不胜感激。我倾向于认为 socket.io-client 在Heroku上运行时缺少某些内容。

编辑:客户端应用程序的一些heroku日志:

2018-06-20T15:15:06.000000+00:00 app[api]: Build succeeded
2018-06-20T15:15:06.274695+00:00 app[api]: Release v16 created by user arondelv@gmail.com
2018-06-20T15:15:15.144186+00:00 heroku[web.1]: Starting process with command `bin/boot`
2018-06-20T15:15:17.398920+00:00 app[web.1]: Injecting runtime env into /app/build/static/js/main.84449669.js (from .profile.d/inject_react_app_env.sh)
2018-06-20T15:15:17.684307+00:00 app[web.1]: Starting log redirection...
2018-06-20T15:15:17.684340+00:00 app[web.1]: Starting nginx...
2018-06-20T15:15:18.851792+00:00 heroku[web.1]: State changed from starting to up
2018-06-20T15:16:37.285108+00:00 heroku[router]: at=info method=GET path="/static/js/main.84449669.js" host=blind-spotify.herokuapp.com request_id=cb9fb26f-d63a-41a5-aa13-975229b31d38 fwd="78.194.202.199" dyno=web.1 connect=1ms service=20ms status=200 bytes=89551 protocol=https
2018-06-20T15:16:37.142408+00:00 app[web.1]: 10.101.219.132 - - [20/Jun/2018:15:16:37 +0000] "GET /service-worker.js HTTP/1.1" 200 1325 "https://blind-spotify.herokuapp.com/service-worker.js" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/67.0.3396.87 Safari/537.36"
2018-06-20T15:16:37.263979+00:00 app[web.1]: 10.101.219.132 - - [20/Jun/2018:15:16:37 +0000] "GET /index.html?_sw-precache=35fdc8fe8422c1c02fcdf50804b79478 HTTP/1.1" 200 361 "https://blind-spotify.herokuapp.com/service-worker.js" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/67.0.3396.87 Safari/537.36"
2018-06-20T15:16:37.286746+00:00 app[web.1]: 10.47.235.131 - - [20/Jun/2018:15:16:37 +0000] "GET /static/js/main.84449669.js HTTP/1.1" 200 89274 "https://blind-spotify.herokuapp.com/service-worker.js" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/67.0.3396.87 Safari/537.36"
2018-06-20T15:16:37.141096+00:00 heroku[router]: at=info method=GET path="/service-worker.js" host=blind-spotify.herokuapp.com request_id=e45f9a70-f9a0-4048-b7cd-26e53210f03a fwd="78.194.202.199" dyno=web.1 connect=0ms service=4ms status=200 bytes=1600 protocol=https
2018-06-20T15:16:37.263663+00:00 heroku[router]: at=info method=GET path= "/index.html?_sw-precache=35fdc8fe8422c1c02fcdf50804b79478" host=blind-spotify.herokuapp.com request_id=8fcc33b5-03fb-4cbd-b37e-746e8d71226b fwd="78.194.202.199" dyno=web.1 connect=0ms service=2ms status=200 bytes=636 protocol=https
2018-06-20T15:16:49.979987+00:00 heroku[router]: at=info method=GET path="/service-worker.js" host=blind-spotify.herokuapp.com request_id=f8b8af4c-b66c-470c-a496-1953a517ea7f fwd="78.194.202.199" dyno=web.1 connect=1ms service=2ms status=304 bytes=168 protocol=https
2018-06-20T15:16:49.979805+00:00 app[web.1]: 10.113.180.10 - - [20/Jun/2018:15:16:49 +0000] "GET /service-worker.js HTTP/1.1" 304 0 "https://blind-spotify.herokuapp.com/service-worker.js" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/67.0.3396.87 Safari/537.36"

0 个答案:

没有答案