首先,我对Node.js很新。这是事情;我正在制作一个移动应用程序,我需要使用路由登录或注册。在android方面,我使用android volley库来完成post方法。这是我在服务器端的代码。
server.js;
var express = require('express'),
validator = require('express-validator'),
app = express(),
bodyParser = require('body-parser');
// configure app to use bodyParser() which will get the data from a POST
app.use(require('express-method-override')());
app.use(bodyParser.json());
app.use(bodyParser.urlencoded({ extended: true }));
app.use(validator);
app.use(express.static(__dirname + '/public'));
var http = require('http');
var ip = process.env.OPENSHIFT_NODEJS_IP || '127.0.0.1' || 'localhost',
port = process.env.OPENSHIFT_NODEJS_PORT || '8080';
// REGISTER ROUTES
app.use('/', require('./routes').router);
http.createServer(function (req, res) {
res.writeHead(200, {'Content-Type': 'text/plain'});
res.end('Hello World\n');
}).listen(port, ip);
console.log('Server running at http://'+ip+':'+port+'/');
和routes.js
var router = require('express').Router(),
db = require('./connectdb')(),
formidable = require('formidable'),
fs = require('fs-extra'),
util = require('util'),
path = require('path');
router.use(function(req, res, next) {
console.log('--new request--');
next(); // visit next routes
});
//ANDROID General routes
router.get('/andro', function(req, res) {
res.json({ message: 'Login/RegisterSystem!' });
});
// LOGIN Route
router.route('/andro/login').post(function(req, res) {
var tag = req.body.tag,
email = req.body.email,
password = req.body.password;
console.log(email);
console.log(password);
});
module.exports.router = router;
我正在观看服务器日志,但是当我使用domainname.com/andro/login或其他已定义的路由时,我看不到任何日志。
日志
Server running at http://127.12.211.129:8080/
任何方法都会很棒。也许我还没有理解这些路线的运作方式。我应该如何理解路线是否正常工作?
答案 0 :(得分:3)
http.createServer(function (req, res) {
res.writeHead(200, {'Content-Type': 'text/plain'});
res.end('Hello World\n');
}).listen(port, ip);
实际上,你创建的http服务器与express();
创建的应用程序无关http.createServer(app).listen(port, ip);
或只是
app.listen(port, ip);
答案 1 :(得分:1)
使用node.js的Sleek.js MVC框架。
管理应用程序代码非常简单