• html文件代码
<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><title>我的node.js首页</title>
</head>
<body></body>
</html>

  • 通过buffer流读取html文件
var fs = require('fs');
function wuwa(callback)
{fs.open('.././webpage/firstpage.html','r',function (err,fd) {var readbyte = Buffer.alloc(1024);var offset = 0;var len = readbyte.length;var readposition = null;function saiwa(callback) {fs.read(fd, readbyte, offset, len, readposition, function (err, readBytes) {if (err) throw new err('~oh,no');//console.log(readbyte.slice(0, readBytes).toString('utf8'));var  ret = readbyte.slice(0, readBytes).toString('utf8');callback(ret);})}saiwa(function (data) {callback(data)})})
}
module.exports = wuwa;

  • 新建一个文件调取buffer读取定义好的函数
var weirwa=require('./readwebpage');
console.log(weirwa);
weirwa(function (data) {console.log(data);
});

输出结果:

[Function: wuwa]
<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><title>我的node.js首页</title>
</head>
<body></body>
</html>Process finished with exit code 0

  • 创建server返回结果
var http = require('http');
var url = require('url');
var weirwa=require('./readwebpage');
http.createServer(function (req,res) {res.writeHead(200,{'content-Type':'text/plain; charset=UTF-8'});weirwa(function (data) {res.end(data);});console.log("url:  "+url.parse(req.url));}).listen(3000);

  • 输出结果

转载于:https://www.cnblogs.com/saintdingspage/p/11425439.html

node.js通过回调函数获取异步函数的返回结果相关推荐

  1. js回调函数获取异步返回值

    js回调函数获取异步返回值 1.尝试获取异步返回值 function test(){var res = 0;setTimeout(function(){res = 1;},1000)return re ...

  2. js 延迟几秒执行_深入研究 Node.js 的回调队列

    队列是 Node.js 中用于有效处理异步操作的一项重要技术. 在本文中,我们将深入研究 Node.js 中的队列:它们是什么,它们如何工作(通过事件循环)以及它们的类型. Node.js 中的队列是 ...

  3. Node.js:海量数据大行其道的今天 node.js 在IO方面如何异步非阻塞

    以其高性能,异步IO著称,当然node.js 在 stream 上的异步也非常到位. 我们一般理解的异步请求是这样的: 同时处理多件件事件 A,B,C,D,E,F,G .... 如果用.net语言去处 ...

  4. Node.js入门 - 回调函数

    本文自theprojectspot.com翻译而来,文章原作者为Lee Jacobson, 已经作者授权翻译用于非商业用途.原文地址:猛戳这里进入 如果你还没读过第一篇,先跑到这里去瞧一瞧,我保证你多 ...

  5. node.js 使用domain模块捕获异步回调中的异常

    和其他服务器端语言相比,貌似node.js 对于异常捕捉确实非常困难. 首先你会想到try/catch ,但是在使用过程中我们会发现并没有真正将错误控制在try/catch 语句中. 为什么? 答案是 ...

  6. 面试题:函数回调机制、异步函数回调机制图例详解 没毛用

    函数回调机制,一种双向调用思想,简单来说就是,如下图所示: 在层次一中的方法一(函数)调用层次二中的方法,并传入函数二的地址,而这个被调用的方法又会调用层次一中的方法,这个最后被调用的方法二就是回调方 ...

  7. 函数回调机制、异步函数回调机制图例详解

    函数回调机制,一种双向调用思想,简单来说就是,如下图所示: 在层次一中的方法一(函数)调用层次二中的方法,并传入函数二的地址,而这个被调用的方法又会调用层次一中的方法,这个最后被调用的方法二就是回调方 ...

  8. node.js同步文件写入、异步文件写入、简单文件写入、简单文件读取、流式文件写入、流式文件读取、fs模块的其他方法

    fs(文件系统 File System) 使用文件系统,需要先引入fs模块,fs是核心模块,直接引入不需要下载 fs模块中所有的操作都有两种形式可供选择(同步和异步) 同步文件会阻塞程序的执行,也就是 ...

  9. Node.js实现简易的获取access_token

    还是老样子,在自学node.js的道路上走得坑坑洼洼,按住了躁动的自己,调整好心情 ,ready........Go....! 首先在项目里新建config.json,其中 appid 与 appsc ...

最新文章

  1. Debain/ArchLinux/Gentoo 等将合并为超级Linux
  2. Lambda 表达式(=):网络摘抄,自学用,侵删。
  3. mysql数据库备份心得
  4. Mybatis缓存配置
  5. web网页打印设计的CSS样式
  6. linux 应用程序 死锁,程序死锁了
  7. 【Cadence 17.2】02 添加封装库/焊盘库
  8. 阿里 Lindorm 数据库联手 Hightopo ,开启工业物联超融合存储模式
  9. 三. SECS/GEM封装库RapidSecs开发手记-SECS/GEM基础知识-1
  10. 统计检验P值代表什么及统计显著性检验方法原理
  11. 移动硬盘无法读取分区表修复RAW格式修复
  12. WinSock网络编程基础(2)客户端
  13. 如何快速取消关注B站(哔哩哔哩)所有up主?(Javascript实现)
  14. 炬芯平台SPP私有协议调试
  15. 使用Jmeter批量测试视频链接可用性
  16. CString、CTime和COleDateTime转换
  17. Tiled Map 地图素材大全下载
  18. FPGA Verilog HDL 系列实例--------顺序脉冲发生器
  19. 【微淘百课】多群直播-微信群直播
  20. 安卓pdf阅读器_电子书阅读器选哪个好?这篇文章告诉你!

热门文章

  1. php email 发送,php 发送 Email
  2. 使用PhpSpreadsheet将Excel导入到MySQL数据库
  3. Linux 字符设备驱动开发基础(六)—— VFS 虚拟文件系统解析
  4. VS.NET版本与VC版本对应关系
  5. Wireshark技巧-过滤规则和显示规则
  6. Fedora 15 快捷操作之新体验
  7. SHA-1算法的C语言实现(源码来自网络)
  8. 微信小程序保存图片到相册;uni-app小程序保存网络图片到相册;小程序保存图片到相册拒绝授权后重新拉起授权;保存图片到系统相册;小程序保存图片测试可以,真机保存图片失败
  9. [react] React中在哪捕获错误?
  10. 前端小知识点(2):普通字符串和new String有什么区别