這裏是我的服務器端:鉻,的NodeJS和HTTPS
var fs = require('fs');
var options = {
key: fs.readFileSync('/cert.key'),
cert: fs.readFileSync('/cert.crt')
};
var app = require('express')();
var http = require('https').Server(options, app);
var io = require('socket.io')(http);
var port = 1234;
app.get('/', function(req, res){
res.sendFile(__dirname + '/../subdomains/labs/socketio.html');
});
io.on('connection', function(socket){
socket.on('chat message', function(msg){
io.emit('chat message', msg);
});
});
http.listen(port, function(){
console.log("\n\n--------------------------------");
console.log('Currently Listening on port %d',port);
console.log("--------------------------------\n\n");
});
而我的客戶端:
<script src="https://cdn.socket.io/socket.io-1.2.0.js"></script>
<script src="https://code.jquery.com/jquery-1.11.1.js"></script>
<script>
var socket = io('https://labs.domain.com:1234');
$('form').submit(function(){
socket.emit('chat message', $('#chat-message').val());
$('#chat-message').val('');
return false;
});
socket.on('chat message', function(msg){
$('#messages').append($('<li>').text(msg));
});
</script>
一切工作正常在Internet Explorer(!AGH)但是,當使用它在Chrome它模具:
GET https://labs.domain.com:1234/socket.io/?EIO=3&transport=polling&t=1463123926844-3 net::ERR_INSECURE_RESPONSE
如果我刪除它的HTTPS方面,它在兩個瀏覽器中都能正常工作。
這是相當令人沮喪的,因爲它似乎只與Chrome的問題,這是我使用最多的瀏覽器。我怎樣才能解決這個問題?
請問[this](http://stackoverflow.com/a/25075349)有幫助嗎? – robertklep
閱讀此:[無法加載資源:net :: ERR_INSECURE_RESPONSE](http://stackoverflow.com/questions/23688565/failed-to-load-resource-neterr-insecure-response)。 – jfriend00
@robertklep:不,因爲當我執行新選項卡位時,我無法解決問題。它只是說'繼續',然後我得到相同的頁面。但即便如此,我還需要能夠通過SSL使用NodeJS,而不會讓我的用戶經歷一堆廢話。 – Chud37