[英]port issue in cordova with nodejs
我是UI前端开发人员,不熟悉服务器端和端口连接。 我创建了一个节点server.js文件,比如
var app = express();
var http = require('http').Server(app);
var io = require('socket.io')(http);
var port = process.env.PORT || 8080;
app.use(express.static(__dirname + '/www'));
io.on('connection', function(socket){
socket.on('chat message', function(msg){
io.emit('chat message', msg);
console.log(msg);
});
});
http.listen(port, function() {
console.log("server starting on: "+port);
});
index.html头
<head>
<meta charset="utf-8">
<meta name="viewport" content="initial-scale=1, maximum-scale=1, user-scalable=no, width=device-width">
<meta http-equiv="Content-Security-Policy" content="default-src *; script-src 'self' 'unsafe-inline' 'unsafe-eval' *; style-src 'self' 'unsafe-inline' *">
<title></title>
<script src="lib/jquery-1.11.3.min.js"></script>
<!-- ionic/angularjs js -->
<!-- cordova script (this will be a 404 during development) -->
<script src="lib/ng-cordova.min.js"></script>
<script src="cordova.js"></script>
<!-- your app's js -->
<script src="js/app.js"></script>
<script src="lib/moment/min/moment.min.js"></script>
<script src="lib/angular-moment/angular-moment.min.js"></script>
<script src="lib/sio-client/socket.io.js"></script>
<script src="lib/angular-socket-io/socket.js"></script>
<script src="js/controllers.js"></script>
</head>
在controller.js内
socket.on('chat message', function(msg) {
//code
})
它在我的本地系统中工作,能够使用套接字聊天。 但是当我创建cordova apk并安装在我的手机中时,聊天功能无效。
那是什么原因?
您尝试使用不安全的端口并获取ERR_UNSAFE_PORT。 在您的情况下,8080是不安全的端口。 在服务器端将其更改为80或443:
var port = process.env.PORT || 80;
或者像这样运行你的Node.js服务器:
PORT=80 node server.js
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.