美文网首页
2018-11-29

2018-11-29

作者: 网网会想念 | 来源:发表于2018-11-29 08:34 被阅读0次

    NodeJs入门(二)

    结合上篇文章

    一:结合http与fs模块一起读取文件夹中的文件

    在nodejs文件夹中建立day02文件夹,在day02文件夹中创建www文件夹与server.js文件,在www文件夹中创建1.html与2.html,随意写上内容。

    const http=require('http');
    const fs=require('fs');
    var server=http.createServer(function(req,res){ 
        var file_name='./www'+req.url;
            //读取文件
        fs.readFile(file_name,function(err,data){
            if(err){
                res.write('404');
            }else{
                res.write(data);
            }
            res.end();  
        })
    });
    server.listen(8080);
    

    打开window+r---cmd--node server.js
    在浏览器中打开127.0.0.1:8080,依次输入/1.html、/2.html

    二:http fs 接受前端传过来的数据请求(解析get方式发送的请求)

    要求:get post ajax form 后台:转换成对象
    form表单发送数据 转换对象格式
    uname=Tom&upwd=123456 {uname:Tom,upwd:123456}

    在day02文件夹中创建from.html文件与server1.js文件

    from.html文件

    <!DOCTYPE html>
    <html>
        <head>
            <meta charset="utf-8">
            <title></title>
        </head>
        <body>
            <form action="http://localhost:8080" method="GET">
                <p>用户名:<input type="text" name="uname"></p>
                <p>密码:<input type="text" name="upwd"></p>
                <p><input type="submit" name="" id="" value="提交" /></p>
            </form>
        </body>
    </html>
    

    方法一:

    server1.js

    const http=require('http');
    var server=http.createServer(function(req,res){
        GET=[]
        var arr=req.url.split('?');
        //console.log(arr);//['/','uname=Tom&upwd=123456']
        var arr1=arr[1].split('&');
        //console.log(arr1);//['uname=Tom','upwd=123456']
            //遍历数组
        for(var i=0;i<arr1.length;i++){
            var arr2 = arr1[i].split('=');
            //console.log(arr2);//["uname",'Tom'],['upwd','123456']
            GET[arr2[0]]=arr2[1];
            console.log(GET);//[uname:'Tom',upwd:'123456']
        }
    })
    server.listen(8080);
    

    方法二:

    创建server2.js

    //方法二:
    const http=require('http');
    const querystring=require('querystring');
    var server=http.createServer(function(req,res){
        var GET=[]
        var arr=req.url.split('?');
        GET=querystring.parse(arr[1]);
        console.log(GET);
    })
    server.listen(8080);
    

    方法三

    url模块

    const http= require('http');
    consr urls = require('url');
    var server=http.createServer(function(req,res){
      var urlLis=urls.parse('http://www.baidu.com/index?uname=Tom&upwd=123456',true);
      console.log(urlLis);
      console.log(urlLis.query);//{uname:'Tom',upwd:'123456'}
    });
    server.listen(8080);
    

    相关文章

      网友评论

          本文标题:2018-11-29

          本文链接:https://www.haomeiwen.com/subject/tqcxcqtx.html