博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
node处理get和post请求
阅读量:4353 次
发布时间:2019-06-07

本文共 3717 字,大约阅读时间需要 12 分钟。

const http = require('http');const fs = require('fs');const path = require('path');const url = require('url');const mime = require('mime');const qs = require('querystring');const router = require('./router');const conn = require('./conn');http.createServer(function (req, res) {    //静态资源的改进    var pathname = url.parse(req.url).pathname; //客户端请求的路径  url.parse()将url字符串转换成obj对象    var ext = path.extname(pathname); //请求的后缀名,可以通过有没有后缀名判断是静态资源还是动态资源 .html    var mimestr = mime.getType(url); //请求文件的类型 text/JavaScript    if (ext) {        fs.readFile(path.join(__dirname, './static', pathname), function (err, data) {            if (err) {                console.log(err);            } else {                res.writeHead(200, {                    'Content-Type': mimestr + ';charset=utf-8'                });                res.end(data);            }        });    }    //动态资源    // router(req,res,'/getdata',function(req,res){     //获取数据的操作    //     // res.write('/getdata');    //     conn.connect();            //进行数据库的连接    //     conn.query("select * from goods",function(error,results,fields){
// res.end(JSON.stringify(results)); //发送数据 // }); // conn.end(); //结束连接 // }); //增加数据 // get请求 // req.method();可以得到请求的类型 // form表单提交的数据req.url? router(req, res, "/addData", function (req, res) { var o = url.parse(req.url,true); var sql = "insert into goods(goodsname,price) values(?,?)"; var params = [o.query.goodsname, o.query.price]; conn.query(sql, params, function (error, results, fields) { if (!error) { console.log('--------------------------insert----------------------------'); console.log(JSON.stringify(results)); console.log('-----------------------------------------------------------------\n\n'); res.end(JSON.stringify(results)); } }) // conn.end(); }); //post请求 enctype:"application/x-www-form-urlencoded" var body = ""; req.on("data",function(chunk){ // body+=chunk; }) req.on("end",function(){ console.log(body); var o = qs.parse(body); var sql = "insert into goods(goodsname,price) values(?,?)"; var params = [o.title,o.price,o.yprice,o.imgsrc]; conn.query(sql,params,function(error, results, fields){ // console.log(error,results); // console.log("========================="+JSON.stringify(fields)+"=========================") if(!error){ console.log(JSON.stringify(results)); res.end(JSON.stringify(results)); } }) }) //上传文件 enctype="multipart/form-data" var form = new formidable.IncomingForm(); //上传文件存放的临时路径,一定是绝对路径 form.uploadDir = path.join(__dirname,"/static/uploads"); //表单提交的数据已经接受完毕 form.parse(req, function(err, fields, files) { // res.write('received upload:\n\n'); // // util.inspect 将任意对象转换成字符串 // res.end(util.inspect({fields: fields, files: files})); fs.rename(files.files.path, "./static/uploads/upload_" + new Date() * 1 + ".jpg", function (err) { if (err) { throw Error("改名失败"); } res.writeHead(200, { 'content-type': 'text/plain' }); res.write('重命名成功'); res.end(); }); });}).listen(8000);console.log('server is success');

 

转载于:https://www.cnblogs.com/bao2333/p/10143049.html

你可能感兴趣的文章
切片的个人理解
查看>>
大数据 hadoop 环境搭建
查看>>
jmeter正则表达式解析
查看>>
17.centos7基础学习与积累-003-命令练习01
查看>>
Air Jordan 8 Retro Performance Review
查看>>
暑假生活第八周总结
查看>>
JQuery中的siblings()是什么意思
查看>>
(转)用graph-easy描绘kubenetes描绘k8s组件逻辑图
查看>>
thinkphp去掉index.php
查看>>
条件锁类
查看>>
request.getParameter()获取前台值为null
查看>>
路飞学城Python-Day186
查看>>
django Paginator分页插件
查看>>
关于APP自动化工程的一点小想法
查看>>
vc++post方式登录网站
查看>>
框架标签
查看>>
求职基础复习之冒泡排序c++版
查看>>
【TCP/IP】Ethernet II VS 802.3
查看>>
WebService学习总结(二)——WebService相关概念介绍
查看>>
webpack构建react应用三:使用webpack Loaders 模块加载器(一)
查看>>