【问题标题】:SSL: Heroku, Nodejs, Socketio, ReactJSSSL:Heroku、Nodejs、Socketio、ReactJS
【发布时间】:2015-11-30 13:22:56
【问题描述】:

我正在将应用程序部署到 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

【问题讨论】:

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


    【解决方案1】:

    问题

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

    问题似乎出在客户端代码上,您似乎正在向其中发出请求

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

    解决办法:

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

    希望对你有帮助

    【讨论】:

    • 谢谢你,很高兴你喜欢它! :D
    猜你喜欢
    • 2012-07-14
    • 1970-01-01
    • 2013-03-09
    • 2016-08-09
    • 2013-01-19
    • 1970-01-01
    • 2020-04-09
    • 2013-10-02
    • 2016-08-23
    相关资源
    最近更新 更多