为了账号安全,请及时绑定邮箱和手机立即绑定

进击Node.js基础(一)

Scott 全栈工程师
难度中级
时长 3小时27分
学习人数
综合评分9.50
664人评价 查看评价
9.8 内容实用
9.4 简洁易懂
9.3 逻辑清晰
  • 请求方法:

    get:获取数据

    post:提交数据

    put:更新发布数据

    delete:删除

    head类同get


    状态码:

    1XX:已提交请求,进行处理

    2XX:已提交请求已处理

    3XX:重定向,进一步处理

    4XX:客户端错误,请求有语法错误

    5XX:服务器端错误

    200 ok,请求成功
    400 语法错误
    401 未授权
    403 服务器拒绝
    404 资源不存在
    500服务器发生不可预期的错误
    503 当前不能处理该请求


    查看全部
  • Timing资源加载所要耗费的时间线
     ·Stalled:等待时机,浏览器要发生请求,到能发出请求的时间。不包括DNS查询和连接建立时间
     ·Proxy negotiation:代理协商的时间
     ·Request sent:请求时间。从请求报文的第一个字节发出,到最后一个字节发送完毕的时间
     ·Waiting(TTFB):请求发出后至收到第一个字节响应的时间
    Content Download:从接受到响应第一个字节开始到最后一个字节结束花费的时间

    查看全部
  • 域名解析

    1、浏览器搜索自身的DNS缓存,eg. chrome://net-internal/#dns

    2、搜索操作系统自身的DNS缓存

    3、读取本地的host文件

    4、浏览器发起一个DNS的一个系统调用

           - 宽带运营商服务器查看本身缓存

            - 代替浏览器发起一个迭代DNS解析请求

            - 运营商服务器把结果返回操作系统内核同时缓存起来

            - 操作系统内核把结果返回浏览器

            - 浏览器拿到对应的IP地址

    5、浏览器获得IP地址后,发起http三次握手

        - TCP 链接请求 ,经过TCP/IP协议栈,最终到达服务端,建立连接

    6、TCP/IP连接建立起来后,浏览器就可以向服务器发送http请求了。

    7、接受请求,响应请求,返回数据。

    8、浏览器拿到响应数据。

    9、浏览器开始渲染页面,或者其他操作。


    查看全部
    3 采集 收起 来源:HTTP知识先填坑

    2018-06-24

  • 安装Git Bash->安装NodeJS->打开Git Bash->node -v->npm -v https://git-scm.com/download/win https://nodejs.org/en/ cmd下查看版本,如果输入node找不到,很可能是环境变量的问题

    查看全部
  • 如果你想要你的模块成为一个特别的对象类型,那么请使用module.exports;
    如果你希望你的模块成为一个传统的模块实例,那么请使用exports。

    查看全部
  • 4个网站
    一、nodejs.org看看nodejs的版本升级,新特性的加入,重要bug的修复等
    二、www.npmjs.com模块社区,看他人源代码,省力
    三、github.com大量的项目和源码
    四、stackoverflow.com技术解答社区以及查询相关资源,环境配置,异常均可找到答案
    查看全部
  • 在此记录下,评论成功的代码:

    var https = require('https')

    var querystring = require('querystring')

     

    var postData = querystring.stringify({

        'content': '老师辛苦了....',

        'mid': 8837

    })

     

    var options = {

        hostname:'www.imooc.com',

        port:443,//http默认端口80,https默认端口443

        path:'/course/docomment',

        method:'POST',

        headers:{//request headers

            'Accept':'application/json, text/javascript, */*; q=0.01',

            'Accept-Encoding':'gzip, deflate, br',

            'Accept-Language':'zh-CN,zh;q=0.9,en;q=0.8',

            'Cache-Control':'no-cache',

            'Connection':'keep-alive',

            'Content-Length': postData.length,

            'Content-Type': 'application/x-www-form-urlencoded; charset=UTF-8',

            'Cookie': '【>>>>>>>>>>>>填写自己的Cookie>>>>>>>>>>>>】',

            'Host':'www.imooc.com',

            'Pragma':'no-cache',

            'Referer':'https://www.imooc.com/video/8837',

            'User-Agent':'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_13_2) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/64.0.3282.186 Safari/537.36',

            'X-Requested-With':'XMLHttpRequest'

        }

    }

     

    var req = https.request(options,function(res){

        console.log('status:'+res.statusCode);

        console.log('headers:'+JSON.stringify(res.headers));

        res.on('data', function(chunk){

            console.log(Buffer.isBuffer(chunk));

            console.log(typeof chunk);

        })

        res.on('end',function(){

            console.log('评论完毕');

        })

    })

     

    req.on('error',function(e){

        console.log('Error:'+e.message);

    })

    req.write(postData);

    req.end();


    查看全部
  • qq控件留言网上的参考。对应自己修改下就行
    
    var http = require('https')var querystring = require('querystring')var postDataObj = {    'qzreferrer':'http://qzs.qq.com/qzone/msgboard/msgbcanvas.html#page=1',    'content':'评论的内容',// 修改项
        'hostUin':'被评论人的qq',// 修改项
        'uin':'本人qq',// 修改项
        'format':'fs',    'inCharset':'utf-8',    'outCharset':'utf-8',    'iNotice':'1',    'ref':'qzone',    'json':'1',    'g_tk':'990423949'}var options={
        hostname:'h5.qzone.qq.com',
        port:80,
        path:'/proxy/domain/m.qzone.qq.com/cgi-bin/new/add_msgb?g_tk=990423949',
        method:'POST',
        headers:{        'Accept':'text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8',        'Accept-Encoding':'gzip, deflate',        'Accept-Language':'zh-CN,zh;q=0.8',        'Cache-Control':'max-age=0',        'Connection':'keep-alive',        'Content-Length':'套接字长度',
            'Content-Type':'application/x-www-form-urlencoded',        'Cookie':'post一次获取的cookie',// 修改项
            'Host':'h5.qzone.qq.com',        'Origin':'http://qzs.qq.com',        'Referer':'http://qzs.qq.com/qzone/msgboard/msgbcanvas.html',        'Upgrade-Insecure-Requests':'1',        'User-Agent':'Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/54.0.2840.87 Safari/537.36'
        }
    }


    查看全部
  • 新建school.js来增加多个班级

    var index = require('./index')

    index.add([

         {

         "klass":"一年级一班",

         "teacherName":"sotte",

         "students":['白富美','高富帅']

         },

         {

         "klass":"一年级二班",

         "teacherName":"sotte",

         "students":['白富美','高富帅']

         }

    ])


    查看全部
  • 一、node.js的版本:偶数位为稳定版本,奇数位为非稳定版本。如-0.6.x稳定,-0.7.x非稳定。

    查看全部
    0 采集 收起 来源:Nodejs版本常识

    2018-09-11

  • 一、不同版本的node.js接口不一定相同,相同接口的Node.js使用规范也不一定相同。

    查看全部
  • 一、打开网站npmjs.org

    二、node.js

    1、node-webkit与appjs相似,允许开发者以web技术,来开发跨平台桌面应用程序。

    2、jade与nodejs组合,可高效管理后台html模板。

    3、ghost,强大,开源博客程序。

    4、grunt,javascript跑各种任务的运行工具,集成各种插件,如样式编译、语法检查、脚本压缩合并、自动化测试等。

    三、推荐网站

    1、官网:nodejs.org.

    2、www.npmjs.com

    3、github.com,阅读优秀源码能快速提高

    4、技术问答社区:stackoverflow.com


    查看全部
  • 如果你想要你的模块成为一个特别的对象类型,那么请使用module.exports;
    如果你希望你的模块成为一个传统的模块实例,那么请使用exports。


    expoets和module.exports在调用的时候稍微有点区别,但是他们实现的功能是一样的。如果你想要你的模块成为一个特别的对象类型,那么使用module.exports;如果你期望你的模块成为一个传统的模块实例,那就使用exports。
    那module.exports和exports到底是怎么一回事呢?module.exports是支持存在的东西,exports是module.exports的一个幅度方法...

    查看全部
  • 别给老师里什么forEach方法,参数的引用 给弄混了, 

    掌握其核心:创建模块,导出模块,加载模块,使用模块;

    创建之后立马导出(module.exports),

    加载模块 var a = requier('url');

    查看全部
  • 在Git Bash输入node service.js是启动服务器; 

    输入"ctrl + c"是停止服务器 response.writeHead(a, b) //第一个参数a是返回的状态码,第二参数是个对象包含一些链接参数

    查看全部

举报

0/150
提交
取消
课程须知
我们的教程面向的同学是:有 JavaScript 基础的同学,如果有过任何后台语言开发的经验更适合,对于有基础的同学,可以快进跳着看教程,不必拘束于每一分钟都听,很多时候其实是思路,思路打通了,很多技术细节也就不用纠结了。
老师告诉你能学到什么?
从 Node.js 基础知识入手,比如安装,环境配置、开发环境等,进一步熟悉 Node.js API ,一些 HTTP 知识,并且对模块的概念和使用更加熟悉,从而进阶到模块或者插件的开发,最终能够借助 Node.js 快速实现特定的需求。

微信扫码,参与3人拼团

意见反馈 帮助中心 APP下载
官方微信
友情提示:

您好,此课程属于迁移课程,您已购买该课程,无需重复购买,感谢您对慕课网的支持!