`

NodeJS初探

 
阅读更多

1、NodeJs是什么
Node.js 是一个平台,建立在 Chrome JavaScript 运行时之上,目的是建立快速、可伸缩的网络应用。Node.js使用事件驱动,非阻塞的 I/O 模式,这使得他是轻量而高效的,能够在分布设备上完美运行高数据吞吐的实时应用。
这句话基本没有什么用,看完了不知道他是个什么东东,做了几个例子后知道了,确实是上面描述的那样。一句话NodeJs是用js来开发后台并生成html,通过非阻塞IO模式,使请求并发更高,但不适合CPU密集型的逻辑开发。
2、如何使用NodeJs
2.1 NodeJs安装很简单,官方下载一个.exe文件安装就OK了。可以参考:http://jingyan.baidu.com/article/b0b63dbfca599a4a483070a5.html,百度上搜到的。
2.2 废话不多说直接上第一个小例子
    1) 新建一个目录“nodeJSTest”
    2) 在目录下新建一个server.js,文件内容如下:
        var http = require('http');
        http.createServer(function(request, response){
            response.writeHead(200, {'Content-Type': 'text/plain'});
            response.end('Hello World\n');
        }).listen(8888);

        console.log('Server running at http://127.0.0.1:3000/');
    3) 打开命令行,cd到“nodeJsTest”目录下,执行node server命令
      
        
 
    4) 在浏览器输入 http://127.0.0.1:3000,浏览器显示“Hello World”,说明第一个示例成功!
3、使用Express
3.1 上面的那个例子是直接用NodeJs开发的,效率比较低。借助框架开发比较快,Express是一个NodeJs的web框架。可以帮助开发者快速生成项目结构,开发者只需要添加对应的逻辑即可。
3.2 Express示例
    1) 在nodeJSTest目录下,创建一个文件package.json,内容如下;
        {
          "name": "NodejsDemo",
          "description": "Hello World test app.",
          "version": "0.0.1",
          "private": true,
          "dependencies": {
            "express": "3.x"
          }
        }
    2) 打开命令行,cd到“nodeJsTest”目录下,执行npm -install命令,即可安装Express;
    3) 执行命令npm list,可以看到依赖的所有模块;
    4) 执行命令express testapp,生成项目。testapp为项目名称,生成目录如下:

 
    5) 进入testapp目录,执行命令npm start,启动项目。
      
        
 
    6) 在浏览器输入 http://127.0.0.1:3000,浏览器显示“Welcome to Express”,说明示例成功!
4、示例解释
4.1 两个例子的执行方式不同,第一个例子是使用原生的NodeJs环境开发的,直接编写一个js文件,然后通过node命令来执行该文件,例子的代码是启动一个httpserver,也可以是任意内容。第二个例子是通过npm命令来启动的。npm是NodeJs的包管理器,可以管理各种包之间的依赖,和Maven类似。第二个例子使用了Express框架,该框架生成了一个固定的项目结构,而且是一个web的项目结构,因此也会启动一个httpserver,只是启动方式发生了变化。npm start命名是包管理器的命令,安装完nodeJs时npm自动安装。调用npm start命令时,会加载该目录下的package.json文件,该文件中包含了执行语句"start": "node ./bin/www",实际也是调用了node命令,和第一个例子一样。如果深入可以查看执行目录中的js文件。


 
4.2 如何开发html呢?总不能用js拼装html吧,这样效率更低了。Express集成了jade,可通过模板的方式来生成html,这样可以很方便完成整个前端的开发。当然jade也是一套新的开发语言,需要有个学习周期。推荐一个学习地址可以作为了解:http://www.w3cplus.com/html/jade.html


就到这吧,刚学了一点点,稍后继续深入。大家多提建议,共同进步。

  • 大小: 28.9 KB
  • 大小: 151.8 KB
  • 大小: 54.3 KB
  • 大小: 123 KB
分享到:
评论

相关推荐

    进阶之初探nodeJS

    NodeJS初探已经让我们对NodeJS有了一个大致的了解,并通过实例演示了如何快速开启一个简单的服务器。本文是在此基础上进一步深入,通过构建一个更加完整的示例来全面理解NodeJS。在这个示例中,我们将构建一个简单的...

    初探nodeJS

    对nodeJS早有耳闻,但是一直迟迟没有对它下手,哈哈哈,今儿咱就来初探一下它。 nodeJS是个啥东东? nodeJS,我的理解就是可以运行在后端的JavaScript。 为什么它能够在后端运行呢? 这就得归功于V8引擎(V8是Google...

    踏上nodejs的不归路——02express框架的引入与使用(1)

    本文将深入探讨“踏上nodejs的不归路——02express框架的引入与使用(1)”这一主题,带你初探Express的魅力。 首先,我们需要了解什么是Express。Express是基于Node.js平台的Web应用框架,它是对Node.js内置的http...

    nodejs入门到实战-02-webserver介绍和express框架初探

    Node.js 是一种基于 Chrome V8 引擎的 JavaScript 运行环境,它允许开发者使用 JavaScript 语言进行服务器端编程。在本节中,我们将探讨如何使用 Node.js 创建一个简单的静态 Web 服务器,并初步接触 Express 框架,...

    beginning-with-nodejs:使用NodeJS和Express的第一步

    《使用NodeJS与Express构建Web应用的初探》 Node.js和Express是现代Web开发中的重要工具,它们为开发者提供了高效、灵活的平台,用于构建高性能的网络应用程序。本篇文章将深入探讨这两个技术的核心概念,以及如何...

    Got:Node.js 的人性化和强大的 HTTP 请求库-开源

    Got 在内部使用 Keyv 来支持各种存储适配器。 对于更具可扩展性的东西,您可以使用官方 Keyv 存储适配器。 钩子允许在请求生命周期中进行修改。 钩子函数可能是异步的并串行运行。 在请求被发送之前,Got 不会对...

    NodePokerAI:基于神经网络的 NodeJS 扑克 AI。 主要是未来 C++ 版本的原型

    《NodePokerAI:利用神经网络的NodeJS扑克人工智能初探》 在现代游戏开发领域,人工智能(AI)的应用越来越广泛,特别是在扑克等策略性游戏中。NodePokerAI项目就是一个典型的例子,它采用Node.js这一流行的...

    node.js基础模块http、网页分析工具cherrio实现爬虫

     说是爬虫初探,其实并没有用到爬虫相关第三方类库,主要用了node.js基础模块http、网页分析工具cherrio。 使用http直接获取url路径对应网页资源,然后使用cherrio分析。 这里我主要学习过的案例自己敲了一遍,加深...

    PersonalWeb:nodejs+bootstrap+mysql 网站,旨在搭建html5游戏,正在建设中~~~

    《基于Node.js、Bootstrap和MySQL构建的HTML5游戏网站初探》 在信息化时代,Web技术日新月异,HTML5、JavaScript等技术为开发者提供了更丰富的网页开发工具。本项目"PersonalWeb"是一个利用Node.js后端框架、...

    深浅node.js.rar

    深入浅出 Node.js (五):初探 Node.js 的异步 I/O 实现 深入浅出 Node.js (六): Buffer 那些事儿 深入浅出 Node.js (七): Connect 模块解析(之一) 深入浅出 Node.js (八): Connect 模块解析(之二)...

    SpringBlade快速开发手册

    开发者需要满足一系列环境要求,如JDK、Maven、MySQL、Redis、Nacos、Sentinel、NodeJS和NPM的版本要求。同时,文档推荐使用IntelliJ IDEA作为后端开发IDE,使用Visual Studio Code或IntelliJ WebStorm作为前端开发...

    node_frame_demo.zip

    《Node.js原生实现HTTP服务框架初探》 在当今的Web开发领域,Node.js以其高效、异步I/O处理的特性受到了广大开发者们的青睐。本文将深入探讨一个基于原生Node.js实现的简单HTTP服务框架——"node_frame_demo"。这个...

Global site tag (gtag.js) - Google Analytics