我已经使用node.js创建了一个TCP服务器,用于接收来自客户端(使用TCP Client android应用进行测试)的消息。是否可能在Heroku上部署这个服务器?这是代码:
var http = require('http')
var express = require('express')
var app = module.exports = express.createServer();
var net = require('net')
var port = process.env.PORT || 5000
var routes = require('./routes')
app.configure(function(){
app.set('views', __dirname + '/views');
app.set('view engine', 'jade');
app.set('view options', {layout:false, pretty:true});
app.use(express.bodyParser());
app.use(express.methodOverride());
app.use(app.router);
app.use(express.static(__dirname + '/public'));
});
app.configure('development', function(){
app.use(express.errorHandler({ dumpExceptions: true, showStack: true }));
});
app.configure('production', function(){
app.use(express.errorHandler());
});
//ROUTES
app.get('/',routes.index);
var mainserver = net.createServer(function(socket) {
console.log('connected');
socket.on('data',function(data){
console.log(data.toString());
io.sockets.emit('dummy',data.toString());
});
});
mainserver.listen(1337, '192.168.1.108');
var io = require('socket.io').listen(app);
app.listen(port);
正如你所看到的,我将TCP消息发送到端口1337和由路由器分配的IP地址。
当我在浏览器中输入localhost:5000时,会得到一个HTML页面,它仅记录服务器从应用程序接收到的消息(稍后使用socket.io将其发送到客户端)。
这里使用了两个端口。
如果要在Heroku上部署,如何替换端口号?还有如何替换IP地址?
感谢任何帮助。