socket.io – polling-xhr.js:264 GET错误
我一直在我的本地主机上的聊天应用程序(这工作正常),但是当我试图承载它在Github或000webhost上 ,我得到这个错误polling-xhr.js:264
在两个主机(两个主机有一个https
连接)。 我正在使用cfenv来parsingCloud Foundry提供的环境variables。 以下是有关错误的图片:
它会继续这样下去…
这是看我的代码:
server.js
var cfenv = require('cfenv'); var appEnv = cfenv.getAppEnv(); var express = require('express'); var app = require('express')(); var server = require('http').Server(app); var io = require('socket.io')(server); server.listen(appEnv.port, appEnv.bind, function(){ console.log("Server starting on " + appEnv.url); }) app.use(express.static(__dirname + '/')); ... // rest of socket.io code
的index.html
... <script src="https://cdnjs.cloudflare.com/ajax/libs/socket.io/2.0.3/socket.io.js"></script> ...
socketService.js( btford的socket.io扩展 )
app.factory('socket', function(socketFactory){ return socketFactory(); });
我已经尝试了在StackOverflow上build议的各种代码,但我似乎无法得到正确的答案 。 我的代码和localhost
一起工作得很好,但是当有一个像上面提到的那样的实际的服务器时,它不起作用。
非常感谢您的帮助!
两台主机都有一个https连接
但是你有你的服务器代码:
require('http');
尝试使用https
模块而不是http
。 这也许可以解释为什么该应用只能在本地主机上运行。 希望这可以帮助 :)
编辑
您还应该validation您的服务器正在侦听端口443而不是80
我刚从一位好朋友那里得知,我所托pipe的服务器不支持node.js
,这就是为什么它不起作用。 当我的朋友安装了他的服务器,它的工作非常好。