Nodejs入门级
2024-09-02 06:52:52
应用不同模块分析
我们来分解一下这个应用,为了实现一个应用,我们需要实现哪些部分呢?
- 我们需要提供Web页面,因此需要一个HTTP服务器
- 对于不同的请求,根据请求的URL,我们的服务器需要给予不同的响应,因此我们需要一个路由,用于把请求对应到请求处理程序(request handler)
- 当请求被服务器接收并通过路由传递之后,需要可以对其进行处理,因此我们需要最终的请求处理程序
- 路由还应该能处理POST数据,并且把数据封装成更友好的格式传递给请求处理入程序,因此需要请求数据处理功能
- 我们不仅仅要处理URL对应的请求,还要把内容显示出来,这意味着我们需要一些视图逻辑供请求处理程序使用,以便将内容发送给用户的浏览器
- 最后,用户需要上传图片,所以我们需要上传处理功能来处理这方面的细节
注:使用Node.js时,我们不仅仅在实现一个应用,同时还实现了整个HTTP服务器
构建应用的模块
把不同功能的代码放入不同的模块中,保持代码分离,保持代码的可读性。必须有一个干净的主文件 index.js,和一个保存着HTTP服务器代码的模块 server.js
在你的项目的根目录下创建一个叫server.js的文件,并写入以下代码:
var http = require("http"); http.createServer(function(request, response) {
response.writeHead(, {"Content-Type": "text/plain"});
response.write("Hello World");
response.end();
}).listen(); //打开浏览器访问 http://localhost:8888/或者:listen(1337, "127.0.0.1"); //打开浏览器访问 http://127.0.0.1:1337/
命令行:node server.js
打开浏览器访问地址,会看到一个写着“Hello World”的网页。
代码逻辑:
1. 全局方法 require() 是用来导入模块的,一般直接把 require() 方法的返回值赋值给一个变量,在 JavaScript 代码中直接使用此变量即可 。require("http") 就是加载系统预置的 http 模块。
2. http.createServer 是模块的方法,目的就是创建并返回一个新的web server对象,并且给服务绑定一个回调,用以处理请求。
3. 通过 http.listen() 方法就可以让该 HTTP 服务器在特定端口监听。
最新文章
- 冰冻三尺非一日之寒--web框架Django(三)
- RDIFramework.NET ━ .NET快速信息化系统开发框架 V3.0 版新增查询引擎管理
- HDU 4289:Control(最小割)
- java synchronized静态同步方法与非静态同步方法,同步语句块
- lintcode:三数之和
- CC2640-之功耗
- Linux----函数中变量的作用域、local关键字。
- Python函数式编程:内置函数map()使用说明
- zencart 掉炸天的tpl_main_page.php
- 关于easyUI的datebox加失去焦点事件即click、blur等
- Android手机客户端测试点(全)
- ../../../../.. 太low了
- Redtiger SQL注入练习(二)
- CSAPP深入理解计算机系统(第二版)第三章家庭作业答案
- fasterxml.jackson 将对象转换为json报错处理
- 使用 wondershaper 在 Linux 中限制网络带宽使用
- Jmeter分布式压力测试
- maven打包 springBoot 工程时,默认识别resources目录,习惯使用 resource 目录的需要手动指定静态资源目录
- python基础(二)条件判断、循环、格式化输出
- Intellij IDEA 添加项目依赖