zoukankan      html  css  js  c++  java
  • node.js通过回调函数获取异步函数的返回结果

    • 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);
    • 输出结果

  • 相关阅读:
    02
    循环语句的注意点
    unsigned/signed int/char类型表示的数值范围
    C程序设计语言(第二版)--- 习题选
    第一篇来自博客园的博客--哈哈希望大家点赞
    脆弱的GPS系统--摘抄《环球科学》
    【Python入门自学笔记专辑】——函数式编程
    c++标准库conio.h文件
    推荐几个配色和图标网站
    Ajax实现简单下拉选项
  • 原文地址:https://www.cnblogs.com/saintdingspage/p/11425439.html
Copyright © 2011-2022 走看看