实战 Node 第3天:开发注册、登陆接口
前言
在第一天和第二天已经搭建好了环境,也学会了项目部署,今天就来实战开发业务模块注册和登陆接口。
一、创建信息发布接口
var logger = require('../logConfig');
var connection = require('../sqlConfig');
var Response = require('./response');
function addProduct(req, res) {
//打印请求报文
logger.info(req.body);
var param = req.body;
var productName = param.productName;
var productPrice = param.productPrice;
var productType = param.productType;
var productImg = param.productImg;
var productDes = param.productDes;
var response = new Response(false, '', -1);
if (productName && productPrice && productType && productImg && productDes) {
//1、查看数据库中是否有相同用户名
connection.query("INSERT INTO product (product_name, product_price, product_type,product_img,product_des) VALUES(?,?,?,?,?)", [productName, productPrice, productType,productImg,productDes], function (error, results, fields) {
if (error) throw error;
//3、如果没有相同用户名,并且有一条记录,则注册成功
if (results.affectedRows == 1) {
response = new Response(false, '添加成功', 1,null);
logger.info(response);
res.send(response);
} else {
response = new Response(false, '添加成功', -1,null);
logger.info(response);
res.send(response);
}
});
} else {
response = new Response(false, '有参数为空', -1);
logger.info(response);
res.send(response);
}
}
module.exports = addProduct;
二、创建获取列表信息接口
var logger = require('../logConfig');
var connection = require('../sqlConfig');
var Response = require('./response');
function getProductList(req, res) {
//打印请求报文
//1、查询数据库中是否有用户名
connection.query("SELECT * FROM product", [], function (error, results, fields) {
if (error) throw error;
var response = new Response(true, '查询成功', 1, results);
logger.info(response);
res.send(response);
});
}
module.exports = getProductList;
三、更新统一服务入口
//使用express框架开发node项目
var express = require('express');
var app = express();
var bodyParser = require('body-parser');
app.use(bodyParser.json());
var register = require('./api/register');
var login = require('./api/login');
var addProduct = require('./api/addProduct');
var getProductList = require('./api/getProductList');
app.post('/register',(req, res)=> register(req, res));
app.post('/login',(req, res)=> login(req, res));
app.post('/addProduct',(req, res)=> addProduct(req, res));
app.post('/getProductList',(req, res)=> getProductList(req, res));
//监听 8081 端口
app.listen(8081);
项目目录如下:
四、测试接口是否成功
- 使用 postman 验证接口。
-
验证添加商品接口
1)选择请求方式为 POST, 在地址栏中输入 http://localhost:8080/addProduct 在 Body 中添加相关参数。
2)查看数据库是否添加成功。
-
验证登陆接口
1)在地址栏中输入 http://localhost:8080/getProductList。
五、总结
对比同步学习的 Java,用 Node 写接口真是太方便了。