我是node.js的新手,我想使用express和mysql数据库制作一个登录api,请与我分享您的想法和示例。
首先,您应该熟悉Express框架。
其次,您将要使用以下表格创建一个mysql数据库:
这些将成为您的应用程序的构建块。基本上,您可以从此处通过一个身份验证http请求token
,该请求token
将分配给一个userId
。
建立数据库后,我们就可以开始添加express
路线了。
以下路由表示,在其前面all
带有/api/v1/
前缀的请求将先通过./api/middlewares/validateRequest
文件,然后再继续。
app.all('/api/v1/*', [require('./app/middlewares/validateRequest')]); // Authenticate all api/v1/ req
validateRequest文件可能如下所示:
module.exports = function(req, res, next) {
// When performing a cross domain request, you will recieve
// a preflighted request first. This is to check if our the app
// is safe.
// We skip the token outh for [OPTIONS] requests.
//if(req.method == 'OPTIONS') next();
// CHECK FOR A token inside the header of the request
var token = (req.body && req.body.access_token) || (req.query && req.query.access_token) || req.headers['x-access-token'];
var key = (req.body && req.body.x_key) || (req.query && req.query.x_key) || req.headers['x-key'];
... DO ALL YOUR MYSQL QUERIES HERE TO VALIDATE THE TOKEN
如果要验证路由,请添加api/v1/
前缀。
app.use('/api/v1/post/', require('./app/services/post/index.js'));
这是一个非常基本的例子。我建议您看一些教程!例如
如果您不想构建mysql数据库并查询自己,则可以使用ORM
sequelize这样的方法进行研究:https : //github.com/sequelize/sequelize
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句