node+express 发送get请求

本文介绍如何使用Node.js的Express框架结合MySQL数据库创建一个RESTful API服务,包括解决跨域问题、获取列表数据等操作。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

var express = require('express')
  , app = express();


var querystring = require('querystring');
var util = require('util');
//和数据库建立连接
var mysql  = require('mysql');  
var connection = mysql.createConnection({     
  host     : 'localhost',       
  user     : 'root',              
  password : '123456',       
  // port: '3306',                   
  database: 'test', 
}); 
 
connection.connect(); 

//解决跨域
app.all('*',function (req, res, next) {
  res.header('Access-Control-Allow-Origin', '*');
  res.header('Access-Control-Allow-Headers', 'Content-Type, Content-Length, Authorization, Accept, X-Requested-With');
  res.header('Access-Control-Allow-Methods', 'PUT, POST, GET, DELETE, OPTIONS');
  if (req.method == 'OPTIONS') {
    res.send(200);
  }
  else {
    next();
  }
});


// 获取列表
app.get('/list', function (req, res) {
  let [addSql,addSqlParams] = ['',[]]
  if(req.query.type == undefined){
    addSql = 'SELECT * FROM list WHERE userId=?';
    addSqlParams = [req.query.userId]
  }else{
    addSql = 'SELECT * FROM list WHERE userId=? and type=?';
    addSqlParams = [req.query.userId,req.query.type]
  }
  connection.query(addSql,addSqlParams,function (err, result) {
    if(err){
      console.log('[INSERT ERROR] - ',err.message);
      return;
    } 
    if(result.length){
      let params = {
        code:1,
        message:"成功",
        data:result
      }     
      res.send(params)
    }else{
      let params = {
        code:0,
        message:"暂无数据"
      }     
      res.send(params)
    }     
  });
});

var server = app.listen(8081, function () {
 
  var host = server.address().address
  var port = server.address().port
 
  console.log("应用实例,访问地址为 http://%s:%s", host, port)
 
})

  

转载于:https://www.cnblogs.com/linsx/p/9882050.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值