SSL:Heroku、Nodejs、Socketio、ReactJS
SSL: Heroku, Nodejs, Socketio, ReactJS
我正在将一个应用程序部署到 Heroku poke-chat,一切都很好,应该是实时的,但是如果您看到控制台不工作,我收到了这个错误
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
。
希望对您有所帮助
我正在将一个应用程序部署到 Heroku poke-chat,一切都很好,应该是实时的,但是如果您看到控制台不工作,我收到了这个错误
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
。
希望对您有所帮助