Maison > Article > interface Web > Serveur de requêtes de builds express
Cet article présente principalement comment utiliser express pour créer un serveur de requêtes simple. Maintenant, je le partage avec vous et le donne comme référence.
Cet article présente la méthode d'utilisation d'Express pour créer un serveur de requêtes simple et le partage avec tout le monde. Les détails sont les suivants :
La pile technologique utilisée comprend Express et MySQL.
Structure du projet :
service --node_modules --app.js --query.js
app.js prend en charge les services d'appel et utilise un analyseur de corps pour traiter les requêtes
query.js implémente les fonctions de liaison et d'interrogation de la base de données.
Le code app.js est le suivant :
var express = require('express'); var query = require('./query') var bodyParser = require('body-parser'); var cookieParser = require('cookie-parser'); var app = express(); app.use(bodyParser.urlencoded({ extended: false }))//返回的对象是一个键值对,当extended为false的时候,键值对中的值就为'String'或'Array'形式,为true的时候,则可为任何数据类型。 app.use(bodyParser.json()) //跨域支持 app.all('*', function(req, res, next) { res.header("Access-Control-Allow-Origin", "*"); res.header('Access-Control-Allow-Methods', 'PUT, GET, POST, DELETE, OPTIONS'); res.header("Access-Control-Allow-Headers", "X-Requested-With"); res.header('Access-Control-Allow-Headers', 'Content-Type'); next(); }); //登录 app.post('/login',(req,res)=>{ var opts = req.body; query(" SELECT *FROM `v_users` WHERE userAcount = ?",opts.userName).then((result)=>{ var response = result[0]; if(opts.password !== response.u_password){ return res.send({ errorCode:'404', errorMsg:'登录密码错误' }) } //模拟生成loginToken var loginToken = response.userAcount + Math.random()*Math.pow(10,16) res.send({ loginToken:loginToken }) }) }) var server = app.listen(3000,()=>{ console.log('success') })
Le code query.js est le suivant :
(function() { var mysql = require('mysql'); // var session = require('cookie-session'); var query = (sql,key) => { var connection = mysql.createConnection({ host: 'localhost', user: 'root', password: 'root123', database: 'm_users' }); connection.connect() var promise = new Promise((resolve,reject)=>{ connection.query(sql,[key], function(error, results, fields) { if(error){ reject(error) }else{ resolve(results); } }); connection.end(); }); return promise; } module.exports = query; })()
Résumé pratique :
1 . Utilisation d'entrée de gamme d'Express, ainsi que utilisation de body-parser et du plug-in mysql.
2. Essayez d'utiliser Inspector pour déboguer le programme de nœud et implémenter le débogueur, d'ailleurs, personnellement, je suis plus habitué à utiliser gulp pour le débogage
3. interface post-appel, elle doit distinguer Content- La différence entre Type :
Content-Type : application/json;charset=UTF-8 le paramètre est placé dans requestPayload
Content-Type : non défini ou le paramètre application/x-www-form-urlencoded, je l'ai mis au-dessus des données du formulaire
et je l'ai compilé pour tout le monde. J'espère qu'il sera utile à tout le monde à l'avenir.
Articles associés :
Utiliser Cheerio pour créer un robot d'exploration Web simple dans Node.js (tutoriel détaillé)
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!