zoukankan      html  css  js  c++  java
  • node 服务器端

    www.runoob.com  ->关于node的文档链接

    例子1:request 请求:接收到客户端的信息 response 响应:发送给客户端的数据
    let obj = require('./2');
    console.log(obj.a);
    
    const fs = require('fs');
    let http = require('http');//引入('http') ,引入一个叫 http.js 的文件,引入http模块。
    http.createServer((request, response) => {//创建一个http 服务器
        let name = request.url.split('=')[1];//请求,接收客户端发送的请求,拿到的key=val的字段(需要切出来才好判断)
        switch (name) { //判断
            case 'xyz':
                response.write('{code:0,msg:chy}');//响应,也就是给客户端发送的信息
                break;
            case 'hongdan':
                response.write('{code:0,msg:cmy}');
                break;
            default:
                response.write('{code:1,msg:cyy}');
                break;
        };
    
        response.end();//响应结束
    }).listen(80);//端口

    例子2:读取本地文件 fs.readFile(path,callback)
    const fs = require('fs'); //这样就引入了 fs 模块
    /*
    操作本地文件的就用 fs 模块
    fs.readFile(path,callback); 读取本地文件
    path:路径
    callback(error,data)   error:失败   data:读出来的文件
    */
    fs.readFile('./www/1.txt', (error, data) => {//fs.readFile(读取本地文件的'路径',(成功,失败)=>{})
        console.log(data.toString());
    });

    例子3:
    const fs = require('fs');
    const qs = require('querystring');//把 a=b&c=d 变成一个对象 let obj = qs.parse(arr[1])
    let http = require('http');
    http.createServer((request, response) => {
        response.writeHead(200,{'Content-Type': 'text/html;charset=utf-8'})//请求头。且能用中文
        /*
            是请求接口还是请求页面
        */
        let url = request.url;
        if (url.includes('?')) {//走接口
            let obj = url
            response.write('后天去玩');
            response.end();
        } else {
            //静态文件
            if (url === '/') url = '/index.html';//不输入文件夹名字的时候,默认找到'/index.html'
            fs.readFile('./www' + url, (error, data) => {
                if(error) {//没有文件
                    let data = fs.readFileSync('./www/404.html');
                    response.write(data);
                }else{//找到文件发送给前端
                    response.write(data);
                }
                response.end();
            });
        };
    }).listen(80);

    例子4:写文件
    //写文件
    let fs = request("writeFile")//写文件
    fs.writeFile('./www/2.txt','danadkjsjdksa',(error)=>{
        if(error){
            console.log('失败')
        }else{
            console.log('成功')
        }
    });

    例子5:删除指定的文件
    //删除指定的文件
    fs.unlinkSync('./www/2.txt');
  • 相关阅读:
    【搜索】【并查集】Codeforces 691D Swaps in Permutation
    【模拟】Codeforces 691C Exponential notation
    【模拟】Codeforces 691B s-palindrome
    【模拟】Codeforces 691A Fashion in Berland
    【贪心】HDU 5783 Divide the Sequence
    【动态规划】HDU 5791 Two
    【中途相遇法】【STL】BAPC2014 K Key to Knowledge (Codeforces GYM 100526)
    【线段树】BAPC2014 E Excellent Engineers (Codeforces GYM 100526)
    【扩展欧几里得】BAPC2014 I Interesting Integers (Codeforces GYM 100526)
    【最大流】BAPC2014 A Avoiding the Apocalypse (Codeforces GYM 100526)
  • 原文地址:https://www.cnblogs.com/MrZhujl/p/10164545.html
Copyright © 2011-2022 走看看