我有一个对我的mongoDB具有HTTP CRUD功能的node.js服务器。
还有一个通过这些功能发送请求的Android应用程序。
我想确保我的服务器能够回答来自特定来源的请求。
例如:仅回答来自android应用程序的请求或我的PC邮递员的请求。
如何确保没有其他人使用相同的url和端口发送请求?
这是我的server.js文件:
const express = require('express');
const MongoClient = require('mongodb');
const bodyParser = require('body-parser');
var db = require('./config/db');
var app = express();
const port = 8000;
app.use(bodyParser.json());
MongoClient.connect(db.url, (err, database) => {
if (err) return console.log(err)
db = database.db("getremp")
require('./app/routes')(app, db);
app.listen(process.env.PORT || port, () => {
console.log("Express server listening on port %d in %s mode - We Are lIVE!",app.settings.env.port, app.settings.env);
});
})
和我的index.js:
const noteRoutes = require('./note_routes');
module.exports = function (app, db) {
noteRoutes(app, db);
};
答案 0 :(得分:0)
您可以使用:
发送包含包含密钥的数据的特定标头,然后在节点应用How to check headers in nodejs?
使用HMAC来认证用户并控制数据的完整性:Node Hmac Authentication
但是您要记住,从移动应用程序流出的所有流量都可以被拦截(例如,使用Fiddler)。切勿使用静态(非动态)值来确保身份验证