使用PhoneGap将Node JS Web应用程序转换为移动应用程序

时间:2017-06-15 06:53:03

标签: node.js cordova express mobile phonegap

我使用HTML / CSS和Node JS开发了Web应用程序。下一个任务是使用Phonegap将此应用程序转换为移动应用程序。即使我的应用程序在Web上工作得很好,转换后节点服务器也无法在移动应用程序中运行。我想这是因为两个原因:

  1. server.js和app.js文件位于根文件夹中,而不在www> js文件夹下。因此,phonegap无法转换这些文件并在移动应用中使用它。
  2. 我需要使用" npm start"从命令提示符启动Web应用程序。命令。我无法以类似的方式运行移动应用程序。
  3. 我没有NodeJS或移动应用开发方面的经验。请提供一些我可以遵循的解决方案或链接来完成任务。

    更新

    @Nisar提供的解决方案可能适用于我的情况。但我需要访问其他js文件中编写的方法,而不是app.js的方法。请提出一种实现相同目标的方法。

1 个答案:

答案 0 :(得分:1)

您无法将其直接转换为app。

首先,您必须将UI(前端)和服务(后端)分开。在前端,你必须通过AJAX Api请求,服务器将作为JSON响应。

要在Node JS中创建服务,请使用以下示例进行GET和POST:

var express = require('express');
var app = express();
var bodyParser = require('body-parser');
var http = require('http').Server(app);

app.use(bodyParser({limit: '50mb'}));


http.listen(1337, function(){
  console.log('listening on *:1337');
});

app.get('/call', function(req, res){
   var end = "{\"result\": \"success\"}";
   res.end(end); 
});

app.post('/getUserData', function(req, res){
    response = {
      first_name:req.body.first_name,
      last_name:req.body.last_name
   };
   res.end(JSON.stringify(response));
});

使用带有以下网址的ajax在您的应用程序中使用相同的内容:

获取:http://localhost:1337/call 发布:http://localhost:1337/getUserData