var http = require('http');
var url = require('url');
var router = require('./router');
// 创建服务端口为8000
http.createServer(function(request,response){// 判断是否为第二次访问if(request.url!=='/favicon.ico'){var pathname = url.parse(request.url).pathname;// 去除路径中的 /pathname = pathname.replace(/\//,'');console.log("======="+pathname);try{router[pathname](request,response);}catch(err){console.log(err);response.writeHead(200,{'Contet-Type':'text/html;charset=utf-8'});response.write(err.toString());response.end('');}}
}).listen(8000);
console.log('Server is running in port 8000');

var url = require('url');
var readhtml = require('./readhtml');var querystring = require('querystring');
function getRecall(req,res){res.writeHead(200,{'Contet-Type':'text/html;charset=utf-8'});function recall(data){res.write(data);res.end('');}return recall;
}module.exports={login:function(req,res){// get方式提交/*var rdata = url.parse(req.url,true).query;console.log(rdata);if(rdata['email']!=undefined){console.log('email===='+rdata['email']);console.log('password='+rdata['pwd']);}recall = getRecall(req,res);readhtml.login('./login.html',recall);*/// post 提交方式// 定义一个post变量,用于暂时储存请求体的信息var post = '';// 通过req的data事件监听函数,每当接受到请求体的数据,就到post变量中req.on('data',function(chunk){post +=chunk;          });// 注意异步// 在end事件触发后,通过querystring.parse将post街恶习为真正的post格式,然后向客户端返回req.on('end',function(){post = querystring.parse(post);//console.log('接受的参数'+ post['email']+'\n'+post['pwd']);if(post['email']!=undefined){console.log('email===='+post['email']);console.log('password='+post['pwd']);}// 接受到所有参数再显示页面recall = getRecall(req,res);readhtml.login('./login.html',recall);});},showimg:function(req,res){res.writeHead(200,{'Contet-Type':'text/html;charset=utf-8'});readhtml.showimg('./1.jpg',res);}
}
var fs = require('fs');module.exports = {login:function(path,recall){fs.readFile(path,function(err,data){if(err){console.log(err)recall('文件不存在。') // 返回异常信息}else{recall(data);}    });},showimg:function(path,res){fs.readFile(path,'binary',function(err,filedata){if(err){console.log(err);return;}else{res.write(filedata,'binary');res.end('');}});}
}

nodejs 传递参数相关推荐

  1. HarmonyOS 界面跳转以及界面跳转的同时传递参数

    HarmonyOS 不带参数界面之间跳转 package com.example.myapplication.slice; import com.example.myapplication.Resou ...

  2. 【Qt】信号和槽对值传递参数和引用传递参数的总结

    在同一个线程中 当信号和槽都在同一个线程中时,值传递参数和引用传递参数有区别: 值传递会复制对象:(测试时,打印传递前后的地址不同) 引用传递不会复制对象:(测试时,打印传递前后的地址相同) 不在同一 ...

  3. python获取当前进程id_Python进程,多进程,获取进程id,给子进程传递参数操作示例...

    本文实例讲述了Python进程,多进程,获取进程id,给子进程传递参数操作.分享给大家供大家参考,具体如下: 线程与线程之间共享全局变量,进程之间不能共享全局变量. 进程与进程相互独立  (可以通过s ...

  4. ref和out 传递参数(C#)

    1.参数传递默认都是传递栈空间里面存储的内容 2.如果添加了ref那么传递的都是栈空间地址,而不再是栈空间里面的内容 3.如果添加了out,那么传递的也是栈空间的地址 1 //写一个方法计算一个int ...

  5. python参数传递方法_深入理解python中函数传递参数是值传递还是引用传递

    python 的 深入理解python中函数传递参数是值传递还是引用传递 目前网络上大部分博客的结论都是这样的: Python不允许程序员选择采用传值还是传 引用.Python参数传递采用的肯定是&q ...

  6. React history.push 传递参数

    从一个组件跳转到另外的组件,通过代码控制跳转如下: history.push("/index/goodsinfo/goodsdetail"); ///index/goodsinfo ...

  7. React 组件之间传递参数

    其实react组件之间传递参数是比较简单的,但是没有具体的使用过,组件之间传递参数是比较常见的事情,所以记录一下,防止以后自己在网上胡乱的翻找 最近做了一个商品的列表页面,我想通过点击修改能够实现商品 ...

  8. Antd-Design List渲染列中Button 点击事件 传递参数

    背景:使用List 渲染的后台数据列表中,点击删除按钮,可以将该项对应的主键传递给函数 点击删除的时候,将该条商品记录对应的id 传递给函数,通过调用后台接口删除  可以看到的是关键代码: onCli ...

  9. React onClick 传递参数

     背景说明 在下图这样的列表中,点击删除按钮需要执行删除操作 列表产生: {title: '操作',dataIndex: 'rowguid',key: 'rowguid',render: (text, ...

最新文章

  1. Asp.net中DataGrid控件的自定义分页
  2. led灯光衰怎么解决_什么是LED光衰,光衰怎么解决?
  3. C++演示std :: sort(),std :: reverse()的函数(附完整源码)
  4. ansible自动化部署
  5. 服务降级-启动时检查
  6. 59、crontab用法简介
  7. H264学习方法历程资料
  8. 日常提高PHP运行效率的习惯
  9. mysql.socket没有_mysql启动找不见socket
  10. 平板电脑有哪些品牌_平板电脑充电柜使用要注意哪些?安和力
  11. java追加到文件末尾_Java追加到文件
  12. 如何用甘特图进行项目进度管理
  13. java 链表两数相加
  14. 计算机辅助审计在外汇,外汇管理领域计算机辅助审计
  15. 台式计算机有hdmi口,我的台式电脑没有hdmi接口怎么解决
  16. 名字也可能惹祸?Gitee.com被停止域名解析
  17. 电脑管理员权限在哪里可以打开
  18. 那些年做过的动态图表-实用漂亮的Excel动态图表
  19. php 去除多余空行,php如何去除空行
  20. 74hc165C语言程序,74hc165使用方法(74hc165功能_内部结构图_时序图)

热门文章

  1. 【渗透测试】锐捷网络-EWEB网管系统易网关批量GetShell
  2. 点餐微信小程序【源码好又多】
  3. vite+vue3+axios+ts入门mockjs以及深入学习,直接一步精通
  4. Bombs CodeForces - 350C
  5. 线上引流压测工具Meteor
  6. AWD平台搭建–Cardinal
  7. 聚类dbi指数_聚类-K-Means
  8. Android - View - ViewPager
  9. jQuery 加入购物车 弹窗
  10. 〖Python网络爬虫实战③〗- 爬虫的基本原理