2017-07-14 131 views
0

有一个React应用程序明确要求来自Mongodb的api /登录信息并检查密码输入,否则它不允许您访问该网站。快速POST在Apache上返回404

本地一切都很好。当我们将所有的构建文件到Apache服务器控制台返回POST https://websitepath.com/api/login 404(未找到)

enter image description here

的这可能是一个问题,为什么它在本地,但在Apache上不起作用任何想法?节点安装并快速在端口4000

这里成功运行存在的index.js

var express = require('express'); 
var bodyParser= require('body-parser') 
var MongoClient = require('mongodb').MongoClient 
var sha1 = require('sha1'); 
var db; 

const PORT = 4000; 
var app = express(); 

app.use(bodyParser.json()); 
app.use(bodyParser.urlencoded({ 
    extended: true 
})); 


app.use('/api/login', function (req, res) { 

    if (!req.body.password) return res.status(400).send('bad_request!') 

    db.collection('user').find().toArray(function(err, results) { 
    if (err) return res.status(500).send('something_wrong!'); 

    var checker = false; 

    results.forEach(function (entry) { 
     if (entry.password === sha1(req.body.password)) checker = true; 
    }) 

    if (checker) { 
     res.send('success') 
    } else { 
     return res.status(403).send('Unfortunately password is incorrect. Please try again.'); 
    } 
    }) 
}) 

MongoClient.connect('mongodb://localhost:27017/test', (err, database) => { 
    if (err) return console.log(err) 
    db = database 
    app.listen(PORT, function() { 
    console.log('Express server is up on port ' + PORT); 
    }); 
}) 

下面的代码是为AuthService.js

​​
+0

你的文件目录结构可能是不正确的安装了 – frozen

+0

你的AuthService.js中指出的端口4000在哪里? – Fabien

回答