如何使用PhoneGap桌面应用程序中的相同端口使用express运行PhoneGap?

时间:2016-07-28 02:10:43

标签: node.js mongodb cordova express

我在iPad上连接到PhoneGap桌面应用程序时遇到问题。

我使用express来查询使用端口3000的MongoDB数据库。但是,PhoneGap桌面应用程序也使用端口3000.如果我更改PhoneGap桌面应用程序的端口,我将能够连接到PhoneGap桌面应用程序在我的iPad上但是,对MongoDB的查询将无效。

如何同时运行(能够在iPad中使用)?

App.js:

var express = require('express');
var http = require('http');
var path = require('path');
var mongoose = require('mongoose');

var app = express();

// all environments
app.set('port', process.env.PORT || 3000);
app.set('views', __dirname + '/view');
app.set('view engine', 'jade');

app.use(express.bodyParser()) ;
app.use(express.methodOverride());
app.use(app.router);
app.use(express.static(path.join(__dirname, 'public')));

var server = http.createServer(app).listen(app.get('port'), function(){
    console.log('Express server listening on port ' + app.get('port'));
});

我尝试使用此方法,结果仍然相同。

var phonegap = require('connect-phonegap'),
express = require('express'),
app = express();

app.use(phonegap());
app.listen(3000);

1 个答案:

答案 0 :(得分:0)

请尝试以下代码:

var server = app.listen(3000,'::1', function () {
    var host = server.address().address;
    var port = server.address().port;
    console.log('running at http://' + host + ':' + port)
});

尝试使用以下URL访问节点进程:

http://[::1]:3000/

可以通过以下网址访问Phonegap:

http://localhost:3000

如果有帮助,请告诉我。