SSL:Heroku,Nodejs,Socketio,ReactJS

我部署到Heroku的应用程序戳 ,一切都很好,应该是实时的,但如果你看到控制台不工作,我得到这个错误

Mixed Content: The page at 'https://poke-chat.herokuapp.com/' was loaded over HTTPS, but requested an insecure XMLHttpRequest endpoint 'http://localhost:3000/socket.io/?EIO=3&transport=polling&t=1441366303148-19'. This request has been blocked; the content must be served over HTTPS 

我不知道为什么:c

这是我的index.js

 import express from 'express'; import http from 'http'; import engine from 'socket.io'; import dbapi from './db-api'; const port = process.env.PORT || 3000; const app = express(); //Ruta de archivos estaticos app.use('/', express.static(__dirname + '/public')); app.get('/pokemons', (req, res) => { dbapi.pokemons.find((pokemons) => { res.json(pokemons); }) }); app.get('/', (req, res) => { res.sendFile(__dirname + '/index.html'); }); let server = http.createServer(app).listen(port, () => { console.log(`El servidor esta escuchando en el puerto ${port}`); }); const io = engine.listen(server); io.on('connection', (socket) => { socket.on('message', (msg) => { io.emit('message', msg); }) }) 

感谢您的帮助:P

问题

这是服务器端代码,看起来不错。

问题似乎在客户端代码,你似乎正在做一个请求

http://localhost:3000/socket.io/?EIO=3&transport=polling&t=1441366303148-19

解:

更改域指向https://poke-chat.herokuapp.com/而不是http://localhost:3000

希望能帮助到你